opt subtitle "HI-TECH Software Omniscient Code Generator (PRO mode) build 47796"

opt pagewidth 120

	opt pm

	processor	16F689
clrc	macro
	bcf	3,0
	endm
clrz	macro
	bcf	3,2
	endm
setc	macro
	bsf	3,0
	endm
setz	macro
	bsf	3,2
	endm
skipc	macro
	btfss	3,0
	endm
skipz	macro
	btfss	3,2
	endm
skipnc	macro
	btfsc	3,0
	endm
skipnz	macro
	btfsc	3,2
	endm
indf	equ	0
indf0	equ	0
pc	equ	2
pcl	equ	2
status	equ	3
fsr	equ	4
fsr0	equ	4
c	equ	1
z	equ	0
pclath	equ	10
# 46 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
INDF equ 00h ;# 
# 52 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TMR0 equ 01h ;# 
# 58 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PCL equ 02h ;# 
# 64 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
STATUS equ 03h ;# 
# 151 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
FSR equ 04h ;# 
# 157 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PORTA equ 05h ;# 
# 206 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PORTB equ 06h ;# 
# 244 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PORTC equ 07h ;# 
# 305 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PCLATH equ 0Ah ;# 
# 311 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
INTCON equ 0Bh ;# 
# 372 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PIR1 equ 0Ch ;# 
# 424 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PIR2 equ 0Dh ;# 
# 462 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TMR1 equ 0Eh ;# 
# 468 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TMR1L equ 0Eh ;# 
# 474 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TMR1H equ 0Fh ;# 
# 480 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
T1CON equ 010h ;# 
# 550 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SSPBUF equ 013h ;# 
# 556 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SSPCON equ 014h ;# 
# 625 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
RCSTA equ 018h ;# 
# 686 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TXREG equ 019h ;# 
# 692 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
RCREG equ 01Ah ;# 
# 698 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
ADRESH equ 01Eh ;# 
# 704 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
ADCON0 equ 01Fh ;# 
# 798 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
OPTION_REG equ 081h ;# 
# 867 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TRISA equ 085h ;# 
# 916 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TRISB equ 086h ;# 
# 954 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TRISC equ 087h ;# 
# 1015 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PIE1 equ 08Ch ;# 
# 1067 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PIE2 equ 08Dh ;# 
# 1105 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PCON equ 08Eh ;# 
# 1143 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
OSCCON equ 08Fh ;# 
# 1207 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
OSCTUNE equ 090h ;# 
# 1258 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SSPADD equ 093h ;# 
# 1264 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SSPMSK equ 093h ;# 
# 1269 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
MSK equ 093h ;# 
# 1385 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SSPSTAT equ 094h ;# 
# 1553 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
WPUA equ 095h ;# 
# 1558 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
WPU equ 095h ;# 
# 1706 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
IOCA equ 096h ;# 
# 1711 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
IOC equ 096h ;# 
# 1879 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
WDTCON equ 097h ;# 
# 1931 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TXSTA equ 098h ;# 
# 2001 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SPBRG equ 099h ;# 
# 2062 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SPBRGH equ 09Ah ;# 
# 2123 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
BAUDCTL equ 09Bh ;# 
# 2174 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
ADRESL equ 09Eh ;# 
# 2180 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
ADCON1 equ 09Fh ;# 
# 2221 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EEDAT equ 010Ch ;# 
# 2226 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EEDATA equ 010Ch ;# 
# 2232 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EEADR equ 010Dh ;# 
# 2238 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EEDATH equ 010Eh ;# 
# 2244 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EEADRH equ 010Fh ;# 
# 2250 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
WPUB equ 0115h ;# 
# 2297 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
IOCB equ 0116h ;# 
# 2335 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
VRCON equ 0118h ;# 
# 2404 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
CM1CON0 equ 0119h ;# 
# 2468 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
CM2CON0 equ 011Ah ;# 
# 2532 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
CM2CON1 equ 011Bh ;# 
# 2570 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
ANSEL equ 011Eh ;# 
# 2631 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
ANSELH equ 011Fh ;# 
# 2668 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EECON1 equ 018Ch ;# 
# 2712 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EECON2 equ 018Dh ;# 
# 2718 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SRCON equ 019Eh ;# 
# 46 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
INDF equ 00h ;# 
# 52 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TMR0 equ 01h ;# 
# 58 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PCL equ 02h ;# 
# 64 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
STATUS equ 03h ;# 
# 151 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
FSR equ 04h ;# 
# 157 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PORTA equ 05h ;# 
# 206 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PORTB equ 06h ;# 
# 244 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PORTC equ 07h ;# 
# 305 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PCLATH equ 0Ah ;# 
# 311 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
INTCON equ 0Bh ;# 
# 372 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PIR1 equ 0Ch ;# 
# 424 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PIR2 equ 0Dh ;# 
# 462 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TMR1 equ 0Eh ;# 
# 468 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TMR1L equ 0Eh ;# 
# 474 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TMR1H equ 0Fh ;# 
# 480 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
T1CON equ 010h ;# 
# 550 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SSPBUF equ 013h ;# 
# 556 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SSPCON equ 014h ;# 
# 625 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
RCSTA equ 018h ;# 
# 686 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TXREG equ 019h ;# 
# 692 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
RCREG equ 01Ah ;# 
# 698 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
ADRESH equ 01Eh ;# 
# 704 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
ADCON0 equ 01Fh ;# 
# 798 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
OPTION_REG equ 081h ;# 
# 867 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TRISA equ 085h ;# 
# 916 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TRISB equ 086h ;# 
# 954 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TRISC equ 087h ;# 
# 1015 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PIE1 equ 08Ch ;# 
# 1067 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PIE2 equ 08Dh ;# 
# 1105 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
PCON equ 08Eh ;# 
# 1143 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
OSCCON equ 08Fh ;# 
# 1207 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
OSCTUNE equ 090h ;# 
# 1258 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SSPADD equ 093h ;# 
# 1264 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SSPMSK equ 093h ;# 
# 1269 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
MSK equ 093h ;# 
# 1385 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SSPSTAT equ 094h ;# 
# 1553 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
WPUA equ 095h ;# 
# 1558 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
WPU equ 095h ;# 
# 1706 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
IOCA equ 096h ;# 
# 1711 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
IOC equ 096h ;# 
# 1879 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
WDTCON equ 097h ;# 
# 1931 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
TXSTA equ 098h ;# 
# 2001 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SPBRG equ 099h ;# 
# 2062 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SPBRGH equ 09Ah ;# 
# 2123 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
BAUDCTL equ 09Bh ;# 
# 2174 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
ADRESL equ 09Eh ;# 
# 2180 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
ADCON1 equ 09Fh ;# 
# 2221 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EEDAT equ 010Ch ;# 
# 2226 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EEDATA equ 010Ch ;# 
# 2232 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EEADR equ 010Dh ;# 
# 2238 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EEDATH equ 010Eh ;# 
# 2244 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EEADRH equ 010Fh ;# 
# 2250 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
WPUB equ 0115h ;# 
# 2297 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
IOCB equ 0116h ;# 
# 2335 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
VRCON equ 0118h ;# 
# 2404 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
CM1CON0 equ 0119h ;# 
# 2468 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
CM2CON0 equ 011Ah ;# 
# 2532 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
CM2CON1 equ 011Bh ;# 
# 2570 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
ANSEL equ 011Eh ;# 
# 2631 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
ANSELH equ 011Fh ;# 
# 2668 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EECON1 equ 018Ch ;# 
# 2712 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
EECON2 equ 018Dh ;# 
# 2718 "C:\Program Files\Microchip\xc8\v1.10\include\pic16f689.h"
SRCON equ 019Eh ;# 
	FNCALL	_main,_DelayMs
	FNCALL	_main,_DelayS
	FNCALL	_main,_ReadCtRatio
	FNCALL	_main,_voltage_adc_cal
	FNCALL	_main,_voltage_adc
	FNCALL	_main,___ftmul
	FNCALL	_main,___altoft
	FNCALL	_main,___ftge
	FNCALL	_main,___fttol
	FNCALL	_main,_decimal_bcd
	FNCALL	_main,___ftdiv
	FNCALL	_main,_eeprom_write
	FNCALL	_main,___ftadd
	FNCALL	_main,___awtoft
	FNCALL	_main,_set_ct_ratio
	FNCALL	_voltage_adc_cal,_DelayMs
	FNCALL	_voltage_adc_cal,___altoft
	FNCALL	_voltage_adc_cal,___ftadd
	FNCALL	_voltage_adc_cal,___lwtoft
	FNCALL	_voltage_adc_cal,___ftdiv
	FNCALL	_voltage_adc_cal,___fttol
	FNCALL	_voltage_adc,_DelayMs
	FNCALL	_voltage_adc,_get_adc
	FNCALL	_voltage_adc,_abs
	FNCALL	_voltage_adc,___lmul
	FNCALL	_voltage_adc,___altoft
	FNCALL	_voltage_adc,___ftadd
	FNCALL	_voltage_adc,___lwtoft
	FNCALL	_voltage_adc,___ftdiv
	FNCALL	_voltage_adc,_sqrt
	FNCALL	_voltage_adc,___ftge
	FNCALL	_set_ct_ratio,_DelayS
	FNCALL	_set_ct_ratio,_ReadCtRatio
	FNCALL	_set_ct_ratio,_decimal_bcd
	FNCALL	_set_ct_ratio,_DelayMs
	FNCALL	_set_ct_ratio,_eeprom_write
	FNCALL	_DelayS,_DelayMs
	FNCALL	_ReadCtRatio,_eeprom_read
	FNCALL	_ReadCtRatio,___lwtoft
	FNCALL	_ReadCtRatio,___ftdiv
	FNCALL	_decimal_bcd,___lwdiv
	FNCALL	_decimal_bcd,___lwmod
	FNCALL	_sqrt,___ftge
	FNCALL	_sqrt,___ftmul
	FNCALL	_sqrt,___ftsub
	FNCALL	___ftsub,___ftadd
	FNCALL	___ftadd,___ftpack
	FNCALL	___ftdiv,___ftpack
	FNCALL	___ftmul,___ftpack
	FNCALL	___awtoft,___ftpack
	FNCALL	___lwtoft,___ftpack
	FNCALL	___altoft,___ftpack
	FNROOT	_main
	FNCALL	intlevel1,_timer0_isr
	global	intlevel1
	FNROOT	intlevel1
	global	_bcd
psect	idataBANK1,class=CODE,space=0,delta=2
global __pidataBANK1
__pidataBANK1:
	file	"E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
	line	63

;initializer for _bcd
	retlw	03Fh
	retlw	06h
	retlw	05Bh
	retlw	04Fh
	retlw	066h
	retlw	06Dh
	retlw	07Dh
	retlw	07h
	retlw	07Fh
	retlw	06Fh
	retlw	0
	retlw	073h
	retlw	071h
	retlw	054h
	retlw	05Ch
	retlw	079h
	retlw	078h
	retlw	05Eh
	retlw	038h
	retlw	050h
	retlw	03Eh
	retlw	077h
	retlw	055h
	retlw	039h
	retlw	06Eh
	retlw	040h
	global	_ZeroAdc
	global	_delayus_variable
	global	_display_position
	global	_key_flage
	global	_ct_ratio_read
	global	_tmp
	global	_CurrentCal
	global	_tmp1
	global	_DecimalFlag
	global	_DecimalFlage
	global	_LedStatus
	global	_CurrVal
	global	_disp_buff
	global	_AvgCurr
	global	_AvgCount
	global	_ADRESH
_ADRESH	set	0x1E
	global	_INTCON
_INTCON	set	0xB
	global	_PIR1
_PIR1	set	0xC
	global	_PORTC
_PORTC	set	0x7
	global	_T1CON
_T1CON	set	0x10
	global	_TMR0
_TMR0	set	0x1
	global	_ADFM
_ADFM	set	0xFF
	global	_ADON
_ADON	set	0xF8
	global	_CARRY
_CARRY	set	0x18
	global	_CHS0
_CHS0	set	0xFA
	global	_CHS1
_CHS1	set	0xFB
	global	_CHS2
_CHS2	set	0xFC
	global	_CHS3
_CHS3	set	0xFD
	global	_GIE
_GIE	set	0x5F
	global	_GO_DONE
_GO_DONE	set	0xF9
	global	_PEIE
_PEIE	set	0x5E
	global	_RA4
_RA4	set	0x2C
	global	_RB4
_RB4	set	0x34
	global	_RB5
_RB5	set	0x35
	global	_RB6
_RB6	set	0x36
	global	_RB7
_RB7	set	0x37
	global	_RC2
_RC2	set	0x3A
	global	_RC7
_RC7	set	0x3F
	global	_RCIF
_RCIF	set	0x65
	global	_T0IE
_T0IE	set	0x5D
	global	_T0IF
_T0IF	set	0x5A
	global	_TMR1IF
_TMR1IF	set	0x60
	global	_VCFG
_VCFG	set	0xFE
	global	_ADRESL
_ADRESL	set	0x9E
	global	_PIE1
_PIE1	set	0x8C
	global	_TRISA
_TRISA	set	0x85
	global	_TRISB
_TRISB	set	0x86
	global	_TRISC
_TRISC	set	0x87
	global	_ADCS0
_ADCS0	set	0x4FC
	global	_ADCS1
_ADCS1	set	0x4FD
	global	_IRCF0
_IRCF0	set	0x47C
	global	_IRCF1
_IRCF1	set	0x47D
	global	_IRCF2
_IRCF2	set	0x47E
	global	_PS0
_PS0	set	0x408
	global	_PS1
_PS1	set	0x409
	global	_PS2
_PS2	set	0x40A
	global	_PSA
_PSA	set	0x40B
	global	_RCIE
_RCIE	set	0x465
	global	_T0CS
_T0CS	set	0x40D
	global	_TRISC2
_TRISC2	set	0x43A
	global	_ANSEL
_ANSEL	set	0x11E
	global	_ANSELH
_ANSELH	set	0x11F
	global	_CM1CON0
_CM1CON0	set	0x119
	global	_CM2CON0
_CM2CON0	set	0x11A
	global	_EEADR
_EEADR	set	0x10D
	global	_EEDATA
_EEDATA	set	0x10C
	global	_EECON1
_EECON1	set	0x18C
	global	_EECON2
_EECON2	set	0x18D
	global	_RD
_RD	set	0xC60
	global	_WR
_WR	set	0xC61
	global	_WREN
_WREN	set	0xC62
; #config settings
	file	"Voltmeter.as"
	line	#
psect cinit,class=CODE,delta=2
global start_initialization
start_initialization:

global __initialization
__initialization:
psect	bitbssCOMMON,class=COMMON,bit,space=1
global __pbitbssCOMMON
__pbitbssCOMMON:
_key_flage:
       ds      1

psect	bssCOMMON,class=COMMON,space=1
global __pbssCOMMON
__pbssCOMMON:
_ZeroAdc:
       ds      2

_delayus_variable:
       ds      1

_display_position:
       ds      1

psect	bssBANK0,class=BANK0,space=1
global __pbssBANK0
__pbssBANK0:
_ct_ratio_read:
       ds      4

_tmp:
       ds      4

_CurrentCal:
       ds      3

_tmp1:
       ds      3

_DecimalFlag:
       ds      1

_DecimalFlage:
       ds      1

_LedStatus:
       ds      1

_CurrVal:
       ds      3

psect	bssBANK1,class=BANK1,space=1
global __pbssBANK1
__pbssBANK1:
_disp_buff:
       ds      4

_AvgCurr:
       ds      3

_AvgCount:
       ds      2

psect	dataBANK1,class=BANK1,space=1
global __pdataBANK1
__pdataBANK1:
	file	"E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
_bcd:
       ds      26

psect clrtext,class=CODE,delta=2
global clear_ram
;	Called with FSR containing the base address, and
;	W with the last address+1
clear_ram:
	clrwdt			;clear the watchdog before getting into this loop
clrloop:
	clrf	indf		;clear RAM location pointed to by FSR
	incf	fsr,f		;increment pointer
	xorwf	fsr,w		;XOR with final address
	btfsc	status,2	;have we reached the end yet?
	retlw	0		;all done for this memory range, return
	xorwf	fsr,w		;XOR again to restore value
	goto	clrloop		;do the next byte

; Clear objects allocated to BITCOMMON
psect cinit,class=CODE,delta=2,merge=1
	clrf	((__pbitbssCOMMON/8)+0)&07Fh
; Clear objects allocated to COMMON
psect cinit,class=CODE,delta=2,merge=1
	clrf	((__pbssCOMMON)+0)&07Fh
	clrf	((__pbssCOMMON)+1)&07Fh
	clrf	((__pbssCOMMON)+2)&07Fh
	clrf	((__pbssCOMMON)+3)&07Fh
; Clear objects allocated to BANK0
psect cinit,class=CODE,delta=2,merge=1
	bcf	status, 7	;select IRP bank0
	movlw	low(__pbssBANK0)
	movwf	fsr
	movlw	low((__pbssBANK0)+014h)
	fcall	clear_ram
; Clear objects allocated to BANK1
psect cinit,class=CODE,delta=2,merge=1
	movlw	low(__pbssBANK1)
	movwf	fsr
	movlw	low((__pbssBANK1)+09h)
	fcall	clear_ram
; Initialize objects allocated to BANK1
	global __pidataBANK1
psect cinit,class=CODE,delta=2,merge=1
	bsf	status, 5	;RP0=1, select bank1
	fcall	__pidataBANK1+0		;fetch initializer
	movwf	__pdataBANK1+0&07fh		
	fcall	__pidataBANK1+1		;fetch initializer
	movwf	__pdataBANK1+1&07fh		
	fcall	__pidataBANK1+2		;fetch initializer
	movwf	__pdataBANK1+2&07fh		
	fcall	__pidataBANK1+3		;fetch initializer
	movwf	__pdataBANK1+3&07fh		
	fcall	__pidataBANK1+4		;fetch initializer
	movwf	__pdataBANK1+4&07fh		
	fcall	__pidataBANK1+5		;fetch initializer
	movwf	__pdataBANK1+5&07fh		
	fcall	__pidataBANK1+6		;fetch initializer
	movwf	__pdataBANK1+6&07fh		
	fcall	__pidataBANK1+7		;fetch initializer
	movwf	__pdataBANK1+7&07fh		
	fcall	__pidataBANK1+8		;fetch initializer
	movwf	__pdataBANK1+8&07fh		
	fcall	__pidataBANK1+9		;fetch initializer
	movwf	__pdataBANK1+9&07fh		
	fcall	__pidataBANK1+10		;fetch initializer
	movwf	__pdataBANK1+10&07fh		
	fcall	__pidataBANK1+11		;fetch initializer
	movwf	__pdataBANK1+11&07fh		
	fcall	__pidataBANK1+12		;fetch initializer
	movwf	__pdataBANK1+12&07fh		
	fcall	__pidataBANK1+13		;fetch initializer
	movwf	__pdataBANK1+13&07fh		
	fcall	__pidataBANK1+14		;fetch initializer
	movwf	__pdataBANK1+14&07fh		
	fcall	__pidataBANK1+15		;fetch initializer
	movwf	__pdataBANK1+15&07fh		
	fcall	__pidataBANK1+16		;fetch initializer
	movwf	__pdataBANK1+16&07fh		
	fcall	__pidataBANK1+17		;fetch initializer
	movwf	__pdataBANK1+17&07fh		
	fcall	__pidataBANK1+18		;fetch initializer
	movwf	__pdataBANK1+18&07fh		
	fcall	__pidataBANK1+19		;fetch initializer
	movwf	__pdataBANK1+19&07fh		
	fcall	__pidataBANK1+20		;fetch initializer
	movwf	__pdataBANK1+20&07fh		
	fcall	__pidataBANK1+21		;fetch initializer
	movwf	__pdataBANK1+21&07fh		
	fcall	__pidataBANK1+22		;fetch initializer
	movwf	__pdataBANK1+22&07fh		
	fcall	__pidataBANK1+23		;fetch initializer
	movwf	__pdataBANK1+23&07fh		
	fcall	__pidataBANK1+24		;fetch initializer
	movwf	__pdataBANK1+24&07fh		
	fcall	__pidataBANK1+25		;fetch initializer
	movwf	__pdataBANK1+25&07fh		
psect cinit,class=CODE,delta=2,merge=1
global end_of_initialization,__end_of__initialization

;End of C runtime variable initialization code

end_of_initialization:
__end_of__initialization:clrf status
ljmp _main	;jump to C main() function
psect	cstackBANK1,class=BANK1,space=1
global __pcstackBANK1
__pcstackBANK1:
	global	main@Tp
main@Tp:	; 2 bytes @ 0x0
	ds	2
	global	main@Tp2
main@Tp2:	; 3 bytes @ 0x2
	ds	3
psect	cstackCOMMON,class=COMMON,space=1
global __pcstackCOMMON
__pcstackCOMMON:
?_ReadCtRatio:	; 0 bytes @ 0x0
?_voltage_adc_cal:	; 0 bytes @ 0x0
?_voltage_adc:	; 0 bytes @ 0x0
?_set_ct_ratio:	; 0 bytes @ 0x0
?_DelayMs:	; 0 bytes @ 0x0
?_DelayS:	; 0 bytes @ 0x0
?_timer0_isr:	; 0 bytes @ 0x0
??_timer0_isr:	; 0 bytes @ 0x0
?_main:	; 0 bytes @ 0x0
?_eeprom_read:	; 1 bytes @ 0x0
get_adc@channel:	; 1 bytes @ 0x0
	ds	5
psect	cstackBANK0,class=BANK0,space=1
global __pcstackBANK0
__pcstackBANK0:
	global	?_eeprom_write
?_eeprom_write:	; 0 bytes @ 0x0
??_eeprom_read:	; 0 bytes @ 0x0
??_DelayMs:	; 0 bytes @ 0x0
	global	?___ftge
?___ftge:	; 1 bit 
	global	?_get_adc
?_get_adc:	; 2 bytes @ 0x0
	global	?_abs
?_abs:	; 2 bytes @ 0x0
	global	?___lwdiv
?___lwdiv:	; 2 bytes @ 0x0
	global	?___lwmod
?___lwmod:	; 2 bytes @ 0x0
	global	?___ftpack
?___ftpack:	; 3 bytes @ 0x0
	global	?___lmul
?___lmul:	; 4 bytes @ 0x0
	global	?___fttol
?___fttol:	; 4 bytes @ 0x0
	global	DelayMs@cnt
DelayMs@cnt:	; 1 bytes @ 0x0
	global	eeprom_read@addr
eeprom_read@addr:	; 1 bytes @ 0x0
	global	eeprom_write@value
eeprom_write@value:	; 1 bytes @ 0x0
	global	abs@a
abs@a:	; 2 bytes @ 0x0
	global	___lwdiv@divisor
___lwdiv@divisor:	; 2 bytes @ 0x0
	global	___lwmod@divisor
___lwmod@divisor:	; 2 bytes @ 0x0
	global	___fttol@f1
___fttol@f1:	; 3 bytes @ 0x0
	global	___ftge@ff1
___ftge@ff1:	; 3 bytes @ 0x0
	global	___ftpack@arg
___ftpack@arg:	; 3 bytes @ 0x0
	global	___lmul@multiplier
___lmul@multiplier:	; 4 bytes @ 0x0
	ds	1
??_eeprom_write:	; 0 bytes @ 0x1
	global	DelayMs@i
DelayMs@i:	; 1 bytes @ 0x1
	global	eeprom_write@addr
eeprom_write@addr:	; 1 bytes @ 0x1
	ds	1
??_get_adc:	; 0 bytes @ 0x2
??_abs:	; 0 bytes @ 0x2
??_DelayS:	; 0 bytes @ 0x2
	global	DelayS@cnt
DelayS@cnt:	; 1 bytes @ 0x2
	global	get_adc@Tp
get_adc@Tp:	; 2 bytes @ 0x2
	global	___lwdiv@dividend
___lwdiv@dividend:	; 2 bytes @ 0x2
	global	___lwmod@dividend
___lwmod@dividend:	; 2 bytes @ 0x2
	ds	1
	global	DelayS@i
DelayS@i:	; 1 bytes @ 0x3
	global	___ftpack@exp
___ftpack@exp:	; 1 bytes @ 0x3
	global	___ftge@ff2
___ftge@ff2:	; 3 bytes @ 0x3
	ds	1
??___lwdiv:	; 0 bytes @ 0x4
??___lwmod:	; 0 bytes @ 0x4
??___fttol:	; 0 bytes @ 0x4
	global	___lwdiv@counter
___lwdiv@counter:	; 1 bytes @ 0x4
	global	___lwmod@counter
___lwmod@counter:	; 1 bytes @ 0x4
	global	___ftpack@sign
___ftpack@sign:	; 1 bytes @ 0x4
	global	get_adc@adc_value
get_adc@adc_value:	; 2 bytes @ 0x4
	global	___lmul@multiplicand
___lmul@multiplicand:	; 4 bytes @ 0x4
	ds	1
??___ftpack:	; 0 bytes @ 0x5
	global	___lwdiv@quotient
___lwdiv@quotient:	; 2 bytes @ 0x5
	ds	1
??___ftge:	; 0 bytes @ 0x6
	ds	1
	global	?_decimal_bcd
?_decimal_bcd:	; 0 bytes @ 0x7
	global	___fttol@sign1
___fttol@sign1:	; 1 bytes @ 0x7
	global	decimal_bcd@value
decimal_bcd@value:	; 2 bytes @ 0x7
	ds	1
??___lmul:	; 0 bytes @ 0x8
	global	?___awtoft
?___awtoft:	; 3 bytes @ 0x8
	global	?___lwtoft
?___lwtoft:	; 3 bytes @ 0x8
	global	?___altoft
?___altoft:	; 3 bytes @ 0x8
	global	___awtoft@c
___awtoft@c:	; 2 bytes @ 0x8
	global	___lwtoft@c
___lwtoft@c:	; 2 bytes @ 0x8
	global	___lmul@product
___lmul@product:	; 4 bytes @ 0x8
	global	___fttol@lval
___fttol@lval:	; 4 bytes @ 0x8
	global	___altoft@c
___altoft@c:	; 4 bytes @ 0x8
	ds	1
??_decimal_bcd:	; 0 bytes @ 0x9
	global	decimal_bcd@result1
decimal_bcd@result1:	; 2 bytes @ 0x9
	ds	2
??___awtoft:	; 0 bytes @ 0xB
??___lwtoft:	; 0 bytes @ 0xB
	global	?___ftdiv
?___ftdiv:	; 3 bytes @ 0xB
	global	___awtoft@sign
___awtoft@sign:	; 1 bytes @ 0xB
	global	decimal_bcd@result2
decimal_bcd@result2:	; 2 bytes @ 0xB
	global	___ftdiv@f2
___ftdiv@f2:	; 3 bytes @ 0xB
	ds	1
??___altoft:	; 0 bytes @ 0xC
	global	___fttol@exp1
___fttol@exp1:	; 1 bytes @ 0xC
	global	___altoft@exp
___altoft@exp:	; 1 bytes @ 0xC
	ds	1
	global	___altoft@sign
___altoft@sign:	; 1 bytes @ 0xD
	global	decimal_bcd@result3
decimal_bcd@result3:	; 2 bytes @ 0xD
	ds	1
	global	?___ftadd
?___ftadd:	; 3 bytes @ 0xE
	global	?___ftmul
?___ftmul:	; 3 bytes @ 0xE
	global	___ftadd@f1
___ftadd@f1:	; 3 bytes @ 0xE
	global	___ftdiv@f1
___ftdiv@f1:	; 3 bytes @ 0xE
	global	___ftmul@f1
___ftmul@f1:	; 3 bytes @ 0xE
	ds	1
	global	decimal_bcd@result4
decimal_bcd@result4:	; 2 bytes @ 0xF
	ds	2
??___ftdiv:	; 0 bytes @ 0x11
	global	___ftadd@f2
___ftadd@f2:	; 3 bytes @ 0x11
	global	___ftmul@f2
___ftmul@f2:	; 3 bytes @ 0x11
	ds	3
??___ftadd:	; 0 bytes @ 0x14
??___ftmul:	; 0 bytes @ 0x14
	global	___ftdiv@cntr
___ftdiv@cntr:	; 1 bytes @ 0x14
	ds	1
	global	___ftdiv@f3
___ftdiv@f3:	; 3 bytes @ 0x15
	ds	2
	global	___ftadd@sign
___ftadd@sign:	; 1 bytes @ 0x17
	global	___ftmul@exp
___ftmul@exp:	; 1 bytes @ 0x17
	ds	1
	global	___ftadd@exp2
___ftadd@exp2:	; 1 bytes @ 0x18
	global	___ftdiv@exp
___ftdiv@exp:	; 1 bytes @ 0x18
	global	___ftmul@f3_as_product
___ftmul@f3_as_product:	; 3 bytes @ 0x18
	ds	1
	global	___ftadd@exp1
___ftadd@exp1:	; 1 bytes @ 0x19
	global	___ftdiv@sign
___ftdiv@sign:	; 1 bytes @ 0x19
	ds	1
??_ReadCtRatio:	; 0 bytes @ 0x1A
??_voltage_adc_cal:	; 0 bytes @ 0x1A
	global	?___ftsub
?___ftsub:	; 3 bytes @ 0x1A
	global	___ftsub@f2
___ftsub@f2:	; 3 bytes @ 0x1A
	ds	1
	global	___ftmul@cntr
___ftmul@cntr:	; 1 bytes @ 0x1B
	ds	1
	global	voltage_adc_cal@channel
voltage_adc_cal@channel:	; 1 bytes @ 0x1C
	global	___ftmul@sign
___ftmul@sign:	; 1 bytes @ 0x1C
	ds	1
	global	ReadCtRatio@Tp
ReadCtRatio@Tp:	; 2 bytes @ 0x1D
	global	voltage_adc_cal@no_samples1
voltage_adc_cal@no_samples1:	; 2 bytes @ 0x1D
	global	___ftsub@f1
___ftsub@f1:	; 3 bytes @ 0x1D
	ds	2
??_set_ct_ratio:	; 0 bytes @ 0x1F
	global	set_ct_ratio@exit_delay
set_ct_ratio@exit_delay:	; 1 bytes @ 0x1F
	global	voltage_adc_cal@no_samples
voltage_adc_cal@no_samples:	; 2 bytes @ 0x1F
	ds	1
??___ftsub:	; 0 bytes @ 0x20
	global	?_sqrt
?_sqrt:	; 3 bytes @ 0x20
	global	set_ct_ratio@key_delay
set_ct_ratio@key_delay:	; 2 bytes @ 0x20
	global	sqrt@y
sqrt@y:	; 3 bytes @ 0x20
	ds	1
	global	voltage_adc_cal@AdcCh
voltage_adc_cal@AdcCh:	; 1 bytes @ 0x21
	ds	2
??_sqrt:	; 0 bytes @ 0x23
	ds	3
	global	sqrt@z
sqrt@z:	; 3 bytes @ 0x26
	ds	3
	global	sqrt@i
sqrt@i:	; 1 bytes @ 0x29
	ds	1
	global	sqrt@q
sqrt@q:	; 3 bytes @ 0x2A
	ds	3
	global	sqrt@x
sqrt@x:	; 3 bytes @ 0x2D
	ds	3
??_voltage_adc:	; 0 bytes @ 0x30
	ds	2
	global	voltage_adc@no_samples1
voltage_adc@no_samples1:	; 2 bytes @ 0x32
	ds	2
	global	voltage_adc@no_samples
voltage_adc@no_samples:	; 2 bytes @ 0x34
	ds	2
	global	voltage_adc@AdcCh
voltage_adc@AdcCh:	; 1 bytes @ 0x36
	ds	1
	global	voltage_adc@ExitDelay
voltage_adc@ExitDelay:	; 2 bytes @ 0x37
	ds	2
	global	voltage_adc@channel
voltage_adc@channel:	; 1 bytes @ 0x39
	ds	1
??_main:	; 0 bytes @ 0x3A
;!
;!Data Sizes:
;!    Strings     0
;!    Constant    0
;!    Data        26
;!    BSS         35
;!    Persistent  0
;!    Stack       0
;!
;!Auto Spaces:
;!    Space          Size  Autos    Used
;!    COMMON           14      5      10
;!    BANK0            80     58      78
;!    BANK1            80      5      40
;!    BANK2            80      0       0

;!
;!Pointer List with Targets:
;!
;!    ?___ftpack	float  size(1) Largest target is 0
;!
;!    ?___ftsub	float  size(1) Largest target is 0
;!
;!    ?___lwmod	unsigned int  size(1) Largest target is 3
;!		 -> CurrVal(BANK0[3]), 
;!
;!    ?___lwdiv	unsigned int  size(1) Largest target is 0
;!
;!    ?_get_adc	int  size(1) Largest target is 0
;!
;!    ?_sqrt	int  size(1) Largest target is 0
;!
;!    ?___lmul	unsigned long  size(1) Largest target is 0
;!
;!    ?_abs	int  size(1) Largest target is 0
;!
;!    ?___lwtoft	float  size(1) Largest target is 0
;!
;!    ?___awtoft	float  size(1) Largest target is 0
;!
;!    ?___ftadd	float  size(1) Largest target is 0
;!
;!    ?___ftdiv	float  size(1) Largest target is 0
;!
;!    ?___fttol	long  size(1) Largest target is 3
;!		 -> CurrVal(BANK0[3]), 
;!
;!    ?___altoft	float  size(1) Largest target is 0
;!
;!    ?___ftmul	float  size(1) Largest target is 0
;!
;!    environ	PTR PTR unsigned char  size(2) Largest target is 0
;!		 -> NULL(NULL[0]), 
;!


;!
;!Critical Paths under _main in COMMON
;!
;!    None.
;!
;!Critical Paths under _timer0_isr in COMMON
;!
;!    None.
;!
;!Critical Paths under _main in BANK0
;!
;!    _main->_voltage_adc
;!    _voltage_adc_cal->___ftadd
;!    _voltage_adc_cal->___ftdiv
;!    _voltage_adc->_sqrt
;!    _set_ct_ratio->_ReadCtRatio
;!    _DelayS->_DelayMs
;!    _ReadCtRatio->___ftdiv
;!    _decimal_bcd->___lwdiv
;!    _sqrt->___ftsub
;!    ___ftsub->___ftadd
;!    ___ftadd->___altoft
;!    ___ftdiv->___lwtoft
;!    ___ftmul->___altoft
;!    ___awtoft->___ftpack
;!    ___lwtoft->___ftpack
;!    ___altoft->___ftpack
;!
;!Critical Paths under _timer0_isr in BANK0
;!
;!    None.
;!
;!Critical Paths under _main in BANK1
;!
;!    None.
;!
;!Critical Paths under _timer0_isr in BANK1
;!
;!    None.
;!
;!Critical Paths under _main in BANK2
;!
;!    None.
;!
;!Critical Paths under _timer0_isr in BANK2
;!
;!    None.

;;
;;Main: autosize = 0, tempsize = 0, incstack = 0, save=0
;;

;!
;!Call Graph Tables:
;!
;! ---------------------------------------------------------------------------------
;! (Depth) Function   	        Calls       Base Space   Used Autos Params    Refs
;! ---------------------------------------------------------------------------------
;! (0) _main                                                 5     5      0   21433
;!                                              0 BANK1      5     5      0
;!                            _DelayMs
;!                             _DelayS
;!                        _ReadCtRatio
;!                    _voltage_adc_cal
;!                        _voltage_adc
;!                            ___ftmul
;!                           ___altoft
;!                             ___ftge
;!                            ___fttol
;!                        _decimal_bcd
;!                            ___ftdiv
;!                       _eeprom_write
;!                            ___ftadd
;!                           ___awtoft
;!                       _set_ct_ratio
;! ---------------------------------------------------------------------------------
;! (1) _voltage_adc_cal                                     12    12      0    3827
;!                                             26 BANK0      8     8      0
;!                            _DelayMs
;!                           ___altoft
;!                            ___ftadd
;!                           ___lwtoft
;!                            ___ftdiv
;!                            ___fttol
;! ---------------------------------------------------------------------------------
;! (1) _voltage_adc                                         10    10      0    7365
;!                                             48 BANK0     10    10      0
;!                            _DelayMs
;!                            _get_adc
;!                                _abs
;!                             ___lmul
;!                           ___altoft
;!                            ___ftadd
;!                           ___lwtoft
;!                            ___ftdiv
;!                               _sqrt
;!                             ___ftge
;! ---------------------------------------------------------------------------------
;! (1) _set_ct_ratio                                         3     3      0    2439
;!                                             31 BANK0      3     3      0
;!                             _DelayS
;!                        _ReadCtRatio
;!                        _decimal_bcd
;!                            _DelayMs
;!                       _eeprom_write
;! ---------------------------------------------------------------------------------
;! (2) _DelayS                                               2     2      0     130
;!                                              2 BANK0      2     2      0
;!                            _DelayMs
;! ---------------------------------------------------------------------------------
;! (2) _DelayMs                                              2     2      0      65
;!                                              0 BANK0      2     2      0
;! ---------------------------------------------------------------------------------
;! (2) _ReadCtRatio                                          5     5      0    1205
;!                                             26 BANK0      5     5      0
;!                        _eeprom_read
;!                           ___lwtoft
;!                            ___ftdiv
;! ---------------------------------------------------------------------------------
;! (2) _decimal_bcd                                         10     8      2     835
;!                                              7 BANK0     10     8      2
;!                            ___lwdiv
;!                            ___lwmod
;! ---------------------------------------------------------------------------------
;! (2) _eeprom_write                                         2     1      1      62
;!                                              0 BANK0      2     1      1
;! ---------------------------------------------------------------------------------
;! (3) _eeprom_read                                          1     1      0      31
;!                                              0 BANK0      1     1      0
;! ---------------------------------------------------------------------------------
;! (2) _get_adc                                              7     5      2      74
;!                                              0 BANK0      6     4      2
;! ---------------------------------------------------------------------------------
;! (2) _abs                                                  4     2      2      93
;!                                              0 BANK0      4     2      2
;! ---------------------------------------------------------------------------------
;! (2) _sqrt                                                19    16      3    3142
;!                                             32 BANK0     16    13      3
;!                             ___ftge
;!                            ___ftmul
;!                            ___ftsub
;! ---------------------------------------------------------------------------------
;! (3) ___lwdiv                                              7     3      4     241
;!                                              0 BANK0      7     3      4
;! ---------------------------------------------------------------------------------
;! (3) ___lwmod                                              5     1      4     232
;!                                              0 BANK0      5     1      4
;! ---------------------------------------------------------------------------------
;! (2) ___lmul                                              12     4      8     136
;!                                              0 BANK0     12     4      8
;! ---------------------------------------------------------------------------------
;! (3) ___ftsub                                              6     0      6    1602
;!                                             26 BANK0      6     0      6
;!                            ___ftadd
;! ---------------------------------------------------------------------------------
;! (1) ___ftadd                                             12     6      6    1537
;!                                             14 BANK0     12     6      6
;!                           ___ftpack
;!                           ___altoft (ARG)
;! ---------------------------------------------------------------------------------
;! (3) ___ftdiv                                             15     9      6     732
;!                                             11 BANK0     15     9      6
;!                           ___ftpack
;!                           ___lwtoft (ARG)
;! ---------------------------------------------------------------------------------
;! (1) ___ftmul                                             15     9      6     800
;!                                             14 BANK0     15     9      6
;!                           ___ftpack
;!                           ___altoft (ARG)
;! ---------------------------------------------------------------------------------
;! (1) ___fttol                                             13     9      4     371
;!                                              0 BANK0     13     9      4
;! ---------------------------------------------------------------------------------
;! (1) ___awtoft                                             4     1      3     445
;!                                              8 BANK0      4     1      3
;!                           ___ftpack
;! ---------------------------------------------------------------------------------
;! (1) ___ftge                                               6     0      6     198
;!                                              0 BANK0      6     0      6
;! ---------------------------------------------------------------------------------
;! (3) ___lwtoft                                             3     0      3     343
;!                                              8 BANK0      3     0      3
;!                           ___ftpack
;! ---------------------------------------------------------------------------------
;! (1) ___altoft                                             6     2      4     516
;!                                              8 BANK0      6     2      4
;!                           ___ftpack
;! ---------------------------------------------------------------------------------
;! (4) ___ftpack                                             8     3      5     312
;!                                              0 BANK0      8     3      5
;! ---------------------------------------------------------------------------------
;! Estimated maximum stack depth 4
;! ---------------------------------------------------------------------------------
;! (Depth) Function   	        Calls       Base Space   Used Autos Params    Refs
;! ---------------------------------------------------------------------------------
;! (6) _timer0_isr                                           5     5      0       0
;!                                              0 COMMON     5     5      0
;! ---------------------------------------------------------------------------------
;! Estimated maximum stack depth 6
;! ---------------------------------------------------------------------------------
;!
;! Call Graph Graphs:
;!
;! _main (ROOT)
;!   _DelayMs
;!   _DelayS
;!     _DelayMs
;!   _ReadCtRatio
;!     _eeprom_read
;!     ___lwtoft
;!       ___ftpack
;!     ___ftdiv
;!       ___ftpack
;!       ___lwtoft (ARG)
;!         ___ftpack
;!   _voltage_adc_cal
;!     _DelayMs
;!     ___altoft
;!       ___ftpack
;!     ___ftadd
;!       ___ftpack
;!       ___altoft (ARG)
;!         ___ftpack
;!     ___lwtoft
;!       ___ftpack
;!     ___ftdiv
;!       ___ftpack
;!       ___lwtoft (ARG)
;!         ___ftpack
;!     ___fttol
;!   _voltage_adc
;!     _DelayMs
;!     _get_adc
;!     _abs
;!     ___lmul
;!     ___altoft
;!       ___ftpack
;!     ___ftadd
;!       ___ftpack
;!       ___altoft (ARG)
;!         ___ftpack
;!     ___lwtoft
;!       ___ftpack
;!     ___ftdiv
;!       ___ftpack
;!       ___lwtoft (ARG)
;!         ___ftpack
;!     _sqrt
;!       ___ftge
;!       ___ftmul
;!         ___ftpack
;!         ___altoft (ARG)
;!           ___ftpack
;!       ___ftsub
;!         ___ftadd
;!           ___ftpack
;!           ___altoft (ARG)
;!             ___ftpack
;!     ___ftge
;!   ___ftmul
;!     ___ftpack
;!     ___altoft (ARG)
;!       ___ftpack
;!   ___altoft
;!     ___ftpack
;!   ___ftge
;!   ___fttol
;!   _decimal_bcd
;!     ___lwdiv
;!     ___lwmod
;!   ___ftdiv
;!     ___ftpack
;!     ___lwtoft (ARG)
;!       ___ftpack
;!   _eeprom_write
;!   ___ftadd
;!     ___ftpack
;!     ___altoft (ARG)
;!       ___ftpack
;!   ___awtoft
;!     ___ftpack
;!   _set_ct_ratio
;!     _DelayS
;!       _DelayMs
;!     _ReadCtRatio
;!       _eeprom_read
;!       ___lwtoft
;!         ___ftpack
;!       ___ftdiv
;!         ___ftpack
;!         ___lwtoft (ARG)
;!           ___ftpack
;!     _decimal_bcd
;!       ___lwdiv
;!       ___lwmod
;!     _DelayMs
;!     _eeprom_write
;!
;! _timer0_isr (ROOT)
;!

;! Address spaces:

;!Name               Size   Autos  Total    Cost      Usage
;!SFR3                 0      0       0       4        0.0%
;!BITSFR3              0      0       0       4        0.0%
;!BANK2               50      0       0       7        0.0%
;!BITBANK2            50      0       0       6        0.0%
;!SFR2                 0      0       0       5        0.0%
;!BITSFR2              0      0       0       5        0.0%
;!BANK1               50      5      28       5       50.0%
;!BITBANK1            50      0       0       4        0.0%
;!SFR1                 0      0       0       2        0.0%
;!BITSFR1              0      0       0       2        0.0%
;!BANK0               50     3A      4E       3       97.5%
;!BITBANK0            50      0       0       9        0.0%
;!SFR0                 0      0       0       1        0.0%
;!BITSFR0              0      0       0       1        0.0%
;!COMMON               E      5       A       1       71.4%
;!BITCOMMON            E      0       1       0        7.1%
;!CODE                 0      0       0       0        0.0%
;!DATA                 0      0      85      10        0.0%
;!ABS                  0      0      80       8        0.0%
;!NULL                 0      0       0       0        0.0%
;!STACK                0      0       5       2        0.0%
;!EEDATA             100      0       0       0        0.0%

	global	_main

;; *************** function _main *****************
;; Defined at:
;;		line 225 in file "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
;; Parameters:    Size  Location     Type
;;		None
;; Auto vars:     Size  Location     Type
;;  Tp2             3    2[BANK1 ] float 
;;  Tp              2    0[BANK1 ] unsigned int 
;; Return value:  Size  Location     Type
;;		None               void
;; Registers used:
;;		wreg, fsr0l, fsr0h, fsr1l, fsr1h, status,2, status,0, btemp+1, pclath, cstack
;; Tracked objects:
;;		On entry : 17F/0
;;		On exit  : 60/0
;;		Unchanged: FFE00/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       0       0       0
;;      Locals:         0       0       5       0
;;      Temps:          0       0       0       0
;;      Totals:         0       0       5       0
;;Total ram usage:        5 bytes
;; Hardware stack levels required when called:    6
;; This function calls:
;;		_DelayMs
;;		_DelayS
;;		_ReadCtRatio
;;		_voltage_adc_cal
;;		_voltage_adc
;;		___ftmul
;;		___altoft
;;		___ftge
;;		___fttol
;;		_decimal_bcd
;;		___ftdiv
;;		_eeprom_write
;;		___ftadd
;;		___awtoft
;;		_set_ct_ratio
;; This function is called by:
;;		Startup code after reset
;; This function uses a non-reentrant model
;;
psect	maintext,global,class=CODE,delta=2,split=1
global __pmaintext
__pmaintext:	;psect for function _main
psect	maintext
	file	"E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
	line	225
	global	__size_of_main
	__size_of_main	equ	__end_of_main-_main
	
_main:	
	opt	stack 2
; Regs used in _main: [allreg]
	line	231
	
l7959:	
;main.c: 228: unsigned int Tp;
;main.c: 229: float Tp2;
;main.c: 231: IRCF0 = 1;
	bsf	status, 5	;RP0=1, select bank1
	bsf	(1148/8)^080h,(1148)&7	;volatile
	line	232
;main.c: 232: IRCF1 = 1;
	bsf	(1149/8)^080h,(1149)&7	;volatile
	line	233
;main.c: 233: IRCF2 = 1;
	bsf	(1150/8)^080h,(1150)&7	;volatile
	line	237
	
l7961:	
;main.c: 237: CM1CON0 = 0x00;
	bcf	status, 5	;RP0=0, select bank2
	bsf	status, 6	;RP1=1, select bank2
	clrf	(281)^0100h	;volatile
	line	238
;main.c: 238: CM2CON0 = 0x00;
	clrf	(282)^0100h	;volatile
	line	240
	
l7963:	
;main.c: 240: ANSEL = 0b00000111;
	movlw	(07h)
	movwf	(286)^0100h	;volatile
	line	241
	
l7965:	
;main.c: 241: ANSELH = 0b00000000;
	clrf	(287)^0100h	;volatile
	line	244
	
l7967:	
;main.c: 244: T0CS = 0;
	bsf	status, 5	;RP0=1, select bank1
	bcf	status, 6	;RP1=0, select bank1
	bcf	(1037/8)^080h,(1037)&7	;volatile
	line	245
	
l7969:	
;main.c: 245: PSA = 0;
	bcf	(1035/8)^080h,(1035)&7	;volatile
	line	246
	
l7971:	
;main.c: 246: PS2 = 0;
	bcf	(1034/8)^080h,(1034)&7	;volatile
	line	247
	
l7973:	
;main.c: 247: PS1 = 1;
	bsf	(1033/8)^080h,(1033)&7	;volatile
	line	248
	
l7975:	
;main.c: 248: PS0 = 0;
	bcf	(1032/8)^080h,(1032)&7	;volatile
	line	250
	
l7977:	
;main.c: 250: INTCON = 0;
	clrf	(11)	;volatile
	line	251
	
l7979:	
;main.c: 251: GIE = 1;
	bsf	(95/8),(95)&7	;volatile
	line	252
	
l7981:	
;main.c: 252: T0IE = 1;
	bsf	(93/8),(93)&7	;volatile
	line	254
	
l7983:	
;main.c: 254: TMR0 = 0;
	bcf	status, 5	;RP0=0, select bank0
	clrf	(1)	;volatile
	line	256
	
l7985:	
;main.c: 256: T1CON=0x00;
	clrf	(16)	;volatile
	line	257
	
l7987:	
;main.c: 257: PEIE = 1;
	bsf	(94/8),(94)&7	;volatile
	line	258
	
l7989:	
;main.c: 258: PEIE = 1;
	bsf	(94/8),(94)&7	;volatile
	line	259
	
l7991:	
;main.c: 259: PIR1 = 0;
	clrf	(12)	;volatile
	line	260
;main.c: 260: PIE1 = 3;
	movlw	(03h)
	bsf	status, 5	;RP0=1, select bank1
	movwf	(140)^080h	;volatile
	line	262
	
l7993:	
;main.c: 262: PORTC = 0x00;
	bcf	status, 5	;RP0=0, select bank0
	clrf	(7)	;volatile
	line	263
	
l7995:	
;main.c: 263: TRISC = 0x00;
	bsf	status, 5	;RP0=1, select bank1
	clrf	(135)^080h	;volatile
	line	265
	
l7997:	
;main.c: 265: TRISB = 0x00;
	clrf	(134)^080h	;volatile
	line	267
	
l7999:	
;main.c: 267: TRISA = 0b00000111;
	movlw	(07h)
	movwf	(133)^080h	;volatile
	line	272
	
l8001:	
;main.c: 272: GIE = 0;
	bcf	(95/8),(95)&7	;volatile
	line	273
;main.c: 273: for(Tp=0;Tp<=10;Tp++)
	clrf	(main@Tp)^080h
	clrf	(main@Tp+1)^080h
	line	274
	
l1647:	
	line	275
;main.c: 274: {
;main.c: 275: T0IE = 0;
	bcf	(93/8),(93)&7	;volatile
	line	276
	
l8007:	
;main.c: 276: PORTC = 0xff;
	movlw	(0FFh)
	bcf	status, 5	;RP0=0, select bank0
	movwf	(7)	;volatile
	line	277
	
l8009:	
;main.c: 277: RB4 = 1;
	bsf	(52/8),(52)&7	;volatile
	line	278
	
l8011:	
;main.c: 278: RB5 = 1;
	bsf	(53/8),(53)&7	;volatile
	line	279
	
l8013:	
;main.c: 279: RB6 = 1;
	bsf	(54/8),(54)&7	;volatile
	line	280
	
l8015:	
;main.c: 280: RB7 = 1;
	bsf	(55/8),(55)&7	;volatile
	line	281
	
l8017:	
;main.c: 281: RA4 = 1;
	bsf	(44/8),(44)&7	;volatile
	line	282
	
l8019:	
;main.c: 282: DelayMs(250);
	movlw	(0FAh)
	fcall	_DelayMs
	line	273
	
l8021:	
	bsf	status, 5	;RP0=1, select bank1
	incf	(main@Tp)^080h,f
	skipnz
	incf	(main@Tp+1)^080h,f
	
l8023:	
	movlw	high(0Bh)
	subwf	(main@Tp+1)^080h,w
	movlw	low(0Bh)
	skipnz
	subwf	(main@Tp)^080h,w
	skipc
	goto	u3191
	goto	u3190
u3191:
	goto	l1647
u3190:
	
l1648:	
	line	284
;main.c: 283: }
;main.c: 284: T0IE = 1;
	bsf	(93/8),(93)&7	;volatile
	line	285
;main.c: 285: GIE = 1;
	bsf	(95/8),(95)&7	;volatile
	line	288
;main.c: 288: key_flage = 0;
	bcf	(_key_flage/8),(_key_flage)&7
	line	289
	
l8025:	
;main.c: 289: DelayMs(250);
	movlw	(0FAh)
	fcall	_DelayMs
	line	290
	
l8027:	
;main.c: 290: if(key_flage == 1)
	btfss	(_key_flage/8),(_key_flage)&7
	goto	u3201
	goto	u3200
u3201:
	goto	l8069
u3200:
	line	292
	
l8029:	
;main.c: 291: {
;main.c: 292: disp_buff[0] = bcd[23];;
	bsf	status, 5	;RP0=1, select bank1
	movf	0+(_bcd)^080h+017h,w
	movwf	(_disp_buff)^080h
	line	293
;main.c: 293: disp_buff[1] = bcd[16];
	movf	0+(_bcd)^080h+010h,w
	movwf	0+(_disp_buff)^080h+01h
	line	294
;main.c: 294: disp_buff[2] = bcd[23];
	movf	0+(_bcd)^080h+017h,w
	movwf	0+(_disp_buff)^080h+02h
	line	295
;main.c: 295: disp_buff[3] = bcd[18];
	movf	0+(_bcd)^080h+012h,w
	movwf	0+(_disp_buff)^080h+03h
	line	297
	
l8031:	
;main.c: 297: DelayS(2);
	movlw	(02h)
	fcall	_DelayS
	line	298
	
l8033:	
;main.c: 298: ReadCtRatio();
	fcall	_ReadCtRatio
	line	299
	
l8035:	
;main.c: 299: key_flage = 0;
	bcf	(_key_flage/8),(_key_flage)&7
	line	302
	
l8037:	
;main.c: 301: {
;main.c: 302: voltage_adc_cal(2);
	movlw	(02h)
	fcall	_voltage_adc_cal
	line	303
	
l8039:	
;main.c: 303: voltage_adc(2);
	movlw	(02h)
	fcall	_voltage_adc
	line	304
	
l8041:	
;main.c: 304: tmp1 = tmp1*CurrentCal;
	movf	(_CurrentCal),w
	movwf	(?___ftmul)
	movf	(_CurrentCal+1),w
	movwf	(?___ftmul+1)
	movf	(_CurrentCal+2),w
	movwf	(?___ftmul+2)
	movf	(_tmp1),w
	movwf	0+(?___ftmul)+03h
	movf	(_tmp1+1),w
	movwf	1+(?___ftmul)+03h
	movf	(_tmp1+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	movwf	(_tmp1)
	movf	(1+(?___ftmul)),w
	movwf	(_tmp1+1)
	movf	(2+(?___ftmul)),w
	movwf	(_tmp1+2)
	line	305
	
l8043:	
;main.c: 305: tmp1 = tmp1*(float)ct_ratio_read;
	movf	(_ct_ratio_read+3),w
	movwf	(?___altoft+3)
	movf	(_ct_ratio_read+2),w
	movwf	(?___altoft+2)
	movf	(_ct_ratio_read+1),w
	movwf	(?___altoft+1)
	movf	(_ct_ratio_read),w
	movwf	(?___altoft)

	fcall	___altoft
	movf	(0+(?___altoft)),w
	movwf	(?___ftmul)
	movf	(1+(?___altoft)),w
	movwf	(?___ftmul+1)
	movf	(2+(?___altoft)),w
	movwf	(?___ftmul+2)
	movf	(_tmp1),w
	movwf	0+(?___ftmul)+03h
	movf	(_tmp1+1),w
	movwf	1+(?___ftmul)+03h
	movf	(_tmp1+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	movwf	(_tmp1)
	movf	(1+(?___ftmul)),w
	movwf	(_tmp1+1)
	movf	(2+(?___ftmul)),w
	movwf	(_tmp1+2)
	line	306
	
l8045:	
;main.c: 306: CurrVal =tmp1;
	movf	(_tmp1),w
	movwf	(_CurrVal)
	movf	(_tmp1+1),w
	movwf	(_CurrVal+1)
	movf	(_tmp1+2),w
	movwf	(_CurrVal+2)
	line	307
	
l8047:	
;main.c: 307: if(CurrVal<500)
	movf	(_CurrVal),w
	movwf	(?___ftge)
	movf	(_CurrVal+1),w
	movwf	(?___ftge+1)
	movf	(_CurrVal+2),w
	movwf	(?___ftge+2)
	movlw	0x0
	movwf	0+(?___ftge)+03h
	movlw	0xfa
	movwf	1+(?___ftge)+03h
	movlw	0x43
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3211
	goto	u3210
u3211:
	goto	l8037
u3210:
	line	309
	
l8049:	
;main.c: 308: {
;main.c: 309: DecimalFlage = 3;
	movlw	(03h)
	movwf	(_DecimalFlage)
	line	310
	
l8051:	
;main.c: 310: Tp2 = CurrVal*10;
	movlw	0x0
	movwf	(?___ftmul)
	movlw	0x20
	movwf	(?___ftmul+1)
	movlw	0x41
	movwf	(?___ftmul+2)
	movf	(_CurrVal),w
	movwf	0+(?___ftmul)+03h
	movf	(_CurrVal+1),w
	movwf	1+(?___ftmul)+03h
	movf	(_CurrVal+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(1+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(2+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+2)^080h
	line	311
	
l8053:	
;main.c: 311: Tp = (unsigned int)Tp2;
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+2)
	fcall	___fttol
	movf	1+(((0+(?___fttol)))),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	0+(((0+(?___fttol)))),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp)^080h
	line	312
;main.c: 312: DecimalFlag= DecimalFlage;
	movlw	(03h)
	bcf	status, 5	;RP0=0, select bank0
	movwf	(_DecimalFlag)
	line	313
	
l8055:	
;main.c: 313: decimal_bcd(Tp);
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?_decimal_bcd+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?_decimal_bcd)
	fcall	_decimal_bcd
	line	314
	
l8057:	
;main.c: 314: if(key_flage == 1)
	btfss	(_key_flage/8),(_key_flage)&7
	goto	u3221
	goto	u3220
u3221:
	goto	l8037
u3220:
	line	316
	
l8059:	
;main.c: 315: {
;main.c: 316: CurrVal = 249.99999/CurrVal;
	bcf	status, 5	;RP0=0, select bank0
	movf	(_CurrVal),w
	movwf	(?___ftdiv)
	movf	(_CurrVal+1),w
	movwf	(?___ftdiv+1)
	movf	(_CurrVal+2),w
	movwf	(?___ftdiv+2)
	movlw	0x0
	movwf	0+(?___ftdiv)+03h
	movlw	0x7a
	movwf	1+(?___ftdiv)+03h
	movlw	0x43
	movwf	2+(?___ftdiv)+03h
	fcall	___ftdiv
	movf	(0+(?___ftdiv)),w
	movwf	(_CurrVal)
	movf	(1+(?___ftdiv)),w
	movwf	(_CurrVal+1)
	movf	(2+(?___ftdiv)),w
	movwf	(_CurrVal+2)
	line	317
;main.c: 317: CurrentCal = CurrentCal*CurrVal;
	movf	(_CurrVal),w
	movwf	(?___ftmul)
	movf	(_CurrVal+1),w
	movwf	(?___ftmul+1)
	movf	(_CurrVal+2),w
	movwf	(?___ftmul+2)
	movf	(_CurrentCal),w
	movwf	0+(?___ftmul)+03h
	movf	(_CurrentCal+1),w
	movwf	1+(?___ftmul)+03h
	movf	(_CurrentCal+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	movwf	(_CurrentCal)
	movf	(1+(?___ftmul)),w
	movwf	(_CurrentCal+1)
	movf	(2+(?___ftmul)),w
	movwf	(_CurrentCal+2)
	line	318
	
l8061:	
;main.c: 318: disp_buff[0] = bcd[23];;
	bsf	status, 5	;RP0=1, select bank1
	movf	0+(_bcd)^080h+017h,w
	movwf	(_disp_buff)^080h
	line	319
	
l8063:	
;main.c: 319: disp_buff[1] = bcd[16];
	movf	0+(_bcd)^080h+010h,w
	movwf	0+(_disp_buff)^080h+01h
	line	320
	
l8065:	
;main.c: 320: disp_buff[2] = bcd[23];
	movf	0+(_bcd)^080h+017h,w
	movwf	0+(_disp_buff)^080h+02h
	line	321
	
l8067:	
;main.c: 321: disp_buff[3] = bcd[17];
	movf	0+(_bcd)^080h+011h,w
	movwf	0+(_disp_buff)^080h+03h
	line	322
;main.c: 322: Tp2 = CurrentCal*1000;
	movlw	0x0
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftmul)
	movlw	0x7a
	movwf	(?___ftmul+1)
	movlw	0x44
	movwf	(?___ftmul+2)
	movf	(_CurrentCal),w
	movwf	0+(?___ftmul)+03h
	movf	(_CurrentCal+1),w
	movwf	1+(?___ftmul)+03h
	movf	(_CurrentCal+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(1+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(2+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+2)^080h
	line	323
;main.c: 323: Tp = (unsigned int)Tp2;
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+2)
	fcall	___fttol
	movf	1+(((0+(?___fttol)))),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	0+(((0+(?___fttol)))),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp)^080h
	line	324
;main.c: 324: eeprom_write(0x02,Tp>>8);
	movf	(main@Tp+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?_eeprom_write)
	movlw	(02h)
	fcall	_eeprom_write
	line	325
;main.c: 325: eeprom_write(0x03,Tp);
	bcf	status, 6	;RP1=0, select bank1
	movf	(main@Tp)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?_eeprom_write)
	movlw	(03h)
	fcall	_eeprom_write
	line	326
;main.c: 326: DelayS(2);
	movlw	(02h)
	fcall	_DelayS
	line	327
;main.c: 327: goto back;
	goto	l7961
	line	339
	
l8069:	
;main.c: 328: }
;main.c: 330: }
;main.c: 331: }
;main.c: 337: }
;main.c: 339: ReadCtRatio();
	fcall	_ReadCtRatio
	line	341
	
l8071:	
;main.c: 341: AvgCurr = 0;
	bsf	status, 5	;RP0=1, select bank1
	clrf	(_AvgCurr)^080h
	clrf	(_AvgCurr+1)^080h
	clrf	(_AvgCurr+2)^080h
	line	342
	
l8073:	
;main.c: 342: CurrVal = 0;
	bcf	status, 5	;RP0=0, select bank0
	clrf	(_CurrVal)
	clrf	(_CurrVal+1)
	clrf	(_CurrVal+2)
	line	343
	
l8075:	
;main.c: 343: key_flage = 0;
	bcf	(_key_flage/8),(_key_flage)&7
	line	347
	
l8077:	
;main.c: 346: {
;main.c: 347: voltage_adc_cal(2);
	movlw	(02h)
	fcall	_voltage_adc_cal
	line	348
	
l8079:	
;main.c: 348: voltage_adc(2);
	movlw	(02h)
	fcall	_voltage_adc
	line	349
	
l8081:	
;main.c: 349: tmp1 = tmp1*CurrentCal;
	movf	(_CurrentCal),w
	movwf	(?___ftmul)
	movf	(_CurrentCal+1),w
	movwf	(?___ftmul+1)
	movf	(_CurrentCal+2),w
	movwf	(?___ftmul+2)
	movf	(_tmp1),w
	movwf	0+(?___ftmul)+03h
	movf	(_tmp1+1),w
	movwf	1+(?___ftmul)+03h
	movf	(_tmp1+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	movwf	(_tmp1)
	movf	(1+(?___ftmul)),w
	movwf	(_tmp1+1)
	movf	(2+(?___ftmul)),w
	movwf	(_tmp1+2)
	line	350
	
l8083:	
;main.c: 350: tmp1 = tmp1*(float)ct_ratio_read;
	movf	(_ct_ratio_read+3),w
	movwf	(?___altoft+3)
	movf	(_ct_ratio_read+2),w
	movwf	(?___altoft+2)
	movf	(_ct_ratio_read+1),w
	movwf	(?___altoft+1)
	movf	(_ct_ratio_read),w
	movwf	(?___altoft)

	fcall	___altoft
	movf	(0+(?___altoft)),w
	movwf	(?___ftmul)
	movf	(1+(?___altoft)),w
	movwf	(?___ftmul+1)
	movf	(2+(?___altoft)),w
	movwf	(?___ftmul+2)
	movf	(_tmp1),w
	movwf	0+(?___ftmul)+03h
	movf	(_tmp1+1),w
	movwf	1+(?___ftmul)+03h
	movf	(_tmp1+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	movwf	(_tmp1)
	movf	(1+(?___ftmul)),w
	movwf	(_tmp1+1)
	movf	(2+(?___ftmul)),w
	movwf	(_tmp1+2)
	line	351
	
l8085:	
;main.c: 351: AvgCurr+=tmp1;
	movf	(_tmp1),w
	movwf	(?___ftadd)
	movf	(_tmp1+1),w
	movwf	(?___ftadd+1)
	movf	(_tmp1+2),w
	movwf	(?___ftadd+2)
	bsf	status, 5	;RP0=1, select bank1
	movf	(_AvgCurr)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	0+(?___ftadd)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(_AvgCurr+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	1+(?___ftadd)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(_AvgCurr+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	2+(?___ftadd)+03h
	fcall	___ftadd
	movf	(0+(?___ftadd)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(_AvgCurr)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(1+(?___ftadd)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(_AvgCurr+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(2+(?___ftadd)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(_AvgCurr+2)^080h
	line	354
	
l8087:	
;main.c: 354: AvgCount++;
	incf	(_AvgCount)^080h,f
	skipnz
	incf	(_AvgCount+1)^080h,f
	line	355
	
l8089:	
;main.c: 355: if(AvgCount>=2)
	movf	(_AvgCount+1)^080h,w
	xorlw	80h
	movwf	btemp+1
	movlw	(high(02h))^80h
	subwf	btemp+1,w
	skipz
	goto	u3235
	movlw	low(02h)
	subwf	(_AvgCount)^080h,w
u3235:

	skipc
	goto	u3231
	goto	u3230
u3231:
	goto	l8097
u3230:
	line	357
	
l8091:	
;main.c: 356: {
;main.c: 357: CurrVal = AvgCount;
	bsf	status, 5	;RP0=1, select bank1
	bcf	status, 6	;RP1=0, select bank1
	movf	(_AvgCount+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___awtoft+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(_AvgCount)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___awtoft)
	fcall	___awtoft
	movf	(0+(?___awtoft)),w
	movwf	(_CurrVal)
	movf	(1+(?___awtoft)),w
	movwf	(_CurrVal+1)
	movf	(2+(?___awtoft)),w
	movwf	(_CurrVal+2)
	line	358
;main.c: 358: CurrVal = AvgCurr/CurrVal;
	movf	(_CurrVal),w
	movwf	(?___ftdiv)
	movf	(_CurrVal+1),w
	movwf	(?___ftdiv+1)
	movf	(_CurrVal+2),w
	movwf	(?___ftdiv+2)
	bsf	status, 5	;RP0=1, select bank1
	movf	(_AvgCurr)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	0+(?___ftdiv)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(_AvgCurr+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	1+(?___ftdiv)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(_AvgCurr+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	2+(?___ftdiv)+03h
	fcall	___ftdiv
	movf	(0+(?___ftdiv)),w
	movwf	(_CurrVal)
	movf	(1+(?___ftdiv)),w
	movwf	(_CurrVal+1)
	movf	(2+(?___ftdiv)),w
	movwf	(_CurrVal+2)
	line	359
;main.c: 359: if(CurrVal<15)
	movf	(_CurrVal),w
	movwf	(?___ftge)
	movf	(_CurrVal+1),w
	movwf	(?___ftge+1)
	movf	(_CurrVal+2),w
	movwf	(?___ftge+2)
	movlw	0x0
	movwf	0+(?___ftge)+03h
	movlw	0x70
	movwf	1+(?___ftge)+03h
	movlw	0x41
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3241
	goto	u3240
u3241:
	goto	l1657
u3240:
	line	360
	
l8093:	
;main.c: 360: CurrVal = 0;
	clrf	(_CurrVal)
	clrf	(_CurrVal+1)
	clrf	(_CurrVal+2)
	
l1657:	
	line	361
;main.c: 361: AvgCurr = 0;
	bsf	status, 5	;RP0=1, select bank1
	clrf	(_AvgCurr)^080h
	clrf	(_AvgCurr+1)^080h
	clrf	(_AvgCurr+2)^080h
	line	362
	
l8095:	
;main.c: 362: AvgCount = 0;
	clrf	(_AvgCount)^080h
	clrf	(_AvgCount+1)^080h
	line	365
	
l8097:	
;main.c: 363: }
;main.c: 365: if(CurrVal>999 && CurrVal<9999)
	movlw	0xc0
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	movwf	(?___ftge)
	movlw	0x79
	movwf	(?___ftge+1)
	movlw	0x44
	movwf	(?___ftge+2)
	movf	(_CurrVal),w
	movwf	0+(?___ftge)+03h
	movf	(_CurrVal+1),w
	movwf	1+(?___ftge)+03h
	movf	(_CurrVal+2),w
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3251
	goto	u3250
u3251:
	goto	l8105
u3250:
	
l8099:	
	movf	(_CurrVal),w
	movwf	(?___ftge)
	movf	(_CurrVal+1),w
	movwf	(?___ftge+1)
	movf	(_CurrVal+2),w
	movwf	(?___ftge+2)
	movlw	0x3c
	movwf	0+(?___ftge)+03h
	movlw	0x1c
	movwf	1+(?___ftge)+03h
	movlw	0x46
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3261
	goto	u3260
u3261:
	goto	l8105
u3260:
	line	367
	
l8101:	
;main.c: 366: {
;main.c: 367: DecimalFlage = 0;
	clrf	(_DecimalFlage)
	line	368
	
l8103:	
;main.c: 368: Tp = (unsigned int)CurrVal;
	movf	(_CurrVal),w
	movwf	(?___fttol)
	movf	(_CurrVal+1),w
	movwf	(?___fttol+1)
	movf	(_CurrVal+2),w
	movwf	(?___fttol+2)
	fcall	___fttol
	movf	1+(((0+(?___fttol)))),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	0+(((0+(?___fttol)))),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp)^080h
	line	369
;main.c: 369: }
	goto	l1659
	line	370
	
l8105:	
;main.c: 370: else if(CurrVal<999 && CurrVal>99)
	movf	(_CurrVal),w
	movwf	(?___ftge)
	movf	(_CurrVal+1),w
	movwf	(?___ftge+1)
	movf	(_CurrVal+2),w
	movwf	(?___ftge+2)
	movlw	0xc0
	movwf	0+(?___ftge)+03h
	movlw	0x79
	movwf	1+(?___ftge)+03h
	movlw	0x44
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3271
	goto	u3270
u3271:
	goto	l8115
u3270:
	
l8107:	
	movlw	0x0
	movwf	(?___ftge)
	movlw	0xc6
	movwf	(?___ftge+1)
	movlw	0x42
	movwf	(?___ftge+2)
	movf	(_CurrVal),w
	movwf	0+(?___ftge)+03h
	movf	(_CurrVal+1),w
	movwf	1+(?___ftge)+03h
	movf	(_CurrVal+2),w
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3281
	goto	u3280
u3281:
	goto	l8115
u3280:
	line	372
	
l8109:	
;main.c: 371: {
;main.c: 372: DecimalFlage = 3;
	movlw	(03h)
	movwf	(_DecimalFlage)
	line	373
	
l8111:	
;main.c: 373: Tp2 = CurrVal*10;
	movlw	0x0
	movwf	(?___ftmul)
	movlw	0x20
	movwf	(?___ftmul+1)
	movlw	0x41
	movwf	(?___ftmul+2)
	movf	(_CurrVal),w
	movwf	0+(?___ftmul)+03h
	movf	(_CurrVal+1),w
	movwf	1+(?___ftmul)+03h
	movf	(_CurrVal+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(1+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(2+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+2)^080h
	line	374
	
l8113:	
;main.c: 374: Tp = (unsigned int)Tp2;
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+2)
	fcall	___fttol
	movf	1+(((0+(?___fttol)))),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	0+(((0+(?___fttol)))),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp)^080h
	line	375
;main.c: 375: }
	goto	l1659
	line	376
	
l8115:	
;main.c: 376: else if(CurrVal<99 && CurrVal>9)
	movf	(_CurrVal),w
	movwf	(?___ftge)
	movf	(_CurrVal+1),w
	movwf	(?___ftge+1)
	movf	(_CurrVal+2),w
	movwf	(?___ftge+2)
	movlw	0x0
	movwf	0+(?___ftge)+03h
	movlw	0xc6
	movwf	1+(?___ftge)+03h
	movlw	0x42
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3291
	goto	u3290
u3291:
	goto	l8125
u3290:
	
l8117:	
	movlw	0x0
	movwf	(?___ftge)
	movlw	0x10
	movwf	(?___ftge+1)
	movlw	0x41
	movwf	(?___ftge+2)
	movf	(_CurrVal),w
	movwf	0+(?___ftge)+03h
	movf	(_CurrVal+1),w
	movwf	1+(?___ftge)+03h
	movf	(_CurrVal+2),w
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3301
	goto	u3300
u3301:
	goto	l8125
u3300:
	line	378
	
l8119:	
;main.c: 377: {
;main.c: 378: DecimalFlage = 2;
	movlw	(02h)
	movwf	(_DecimalFlage)
	line	379
	
l8121:	
;main.c: 379: Tp2 = CurrVal*100;
	movlw	0x0
	movwf	(?___ftmul)
	movlw	0xc8
	movwf	(?___ftmul+1)
	movlw	0x42
	movwf	(?___ftmul+2)
	movf	(_CurrVal),w
	movwf	0+(?___ftmul)+03h
	movf	(_CurrVal+1),w
	movwf	1+(?___ftmul)+03h
	movf	(_CurrVal+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(1+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(2+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+2)^080h
	goto	l8113
	line	382
	
l8125:	
;main.c: 382: else if(CurrVal<9)
	movf	(_CurrVal),w
	movwf	(?___ftge)
	movf	(_CurrVal+1),w
	movwf	(?___ftge+1)
	movf	(_CurrVal+2),w
	movwf	(?___ftge+2)
	movlw	0x0
	movwf	0+(?___ftge)+03h
	movlw	0x10
	movwf	1+(?___ftge)+03h
	movlw	0x41
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3311
	goto	u3310
u3311:
	goto	l1659
u3310:
	line	384
	
l8127:	
;main.c: 383: {
;main.c: 384: DecimalFlage = 1;
	clrf	(_DecimalFlage)
	incf	(_DecimalFlage),f
	line	385
	
l8129:	
;main.c: 385: Tp2 = CurrVal*1000;
	movlw	0x0
	movwf	(?___ftmul)
	movlw	0x7a
	movwf	(?___ftmul+1)
	movlw	0x44
	movwf	(?___ftmul+2)
	movf	(_CurrVal),w
	movwf	0+(?___ftmul)+03h
	movf	(_CurrVal+1),w
	movwf	1+(?___ftmul)+03h
	movf	(_CurrVal+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(1+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(2+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+2)^080h
	line	386
;main.c: 386: Tp = (unsigned int)Tp2;
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+2)
	fcall	___fttol
	movf	1+(((0+(?___fttol)))),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	0+(((0+(?___fttol)))),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp)^080h
	line	389
	
l1659:	
;main.c: 387: }
;main.c: 389: if(CurrVal>9999)
	movlw	0x3c
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge)
	movlw	0x1c
	movwf	(?___ftge+1)
	movlw	0x46
	movwf	(?___ftge+2)
	movf	(_CurrVal),w
	movwf	0+(?___ftge)+03h
	movf	(_CurrVal+1),w
	movwf	1+(?___ftge)+03h
	movf	(_CurrVal+2),w
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3321
	goto	u3320
u3321:
	goto	l1665
u3320:
	line	392
	
l8131:	
;main.c: 390: {
;main.c: 392: Tp2 = CurrVal/1000;
	movlw	0x0
	movwf	(?___ftdiv)
	movlw	0x7a
	movwf	(?___ftdiv+1)
	movlw	0x44
	movwf	(?___ftdiv+2)
	movf	(_CurrVal),w
	movwf	0+(?___ftdiv)+03h
	movf	(_CurrVal+1),w
	movwf	1+(?___ftdiv)+03h
	movf	(_CurrVal+2),w
	movwf	2+(?___ftdiv)+03h
	fcall	___ftdiv
	movf	(0+(?___ftdiv)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(1+(?___ftdiv)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(2+(?___ftdiv)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+2)^080h
	line	393
;main.c: 393: if(Tp2>999 && Tp2<9999)
	movlw	0xc0
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge)
	movlw	0x79
	movwf	(?___ftge+1)
	movlw	0x44
	movwf	(?___ftge+2)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	0+(?___ftge)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	1+(?___ftge)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3331
	goto	u3330
u3331:
	goto	l8139
u3330:
	
l8133:	
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge+2)
	movlw	0x3c
	movwf	0+(?___ftge)+03h
	movlw	0x1c
	movwf	1+(?___ftge)+03h
	movlw	0x46
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3341
	goto	u3340
u3341:
	goto	l8139
u3340:
	line	395
	
l8135:	
;main.c: 394: {
;main.c: 395: DecimalFlage = 0;
	clrf	(_DecimalFlage)
	line	396
	
l8137:	
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+2)
	fcall	___fttol
	line	397
;main.c: 397: }
	goto	l8165
	line	398
	
l8139:	
;main.c: 398: else if(Tp2<999 && Tp2>99)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge+2)
	movlw	0xc0
	movwf	0+(?___ftge)+03h
	movlw	0x79
	movwf	1+(?___ftge)+03h
	movlw	0x44
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3351
	goto	u3350
u3351:
	goto	l8149
u3350:
	
l8141:	
	movlw	0x0
	movwf	(?___ftge)
	movlw	0xc6
	movwf	(?___ftge+1)
	movlw	0x42
	movwf	(?___ftge+2)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	0+(?___ftge)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	1+(?___ftge)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3361
	goto	u3360
u3361:
	goto	l8149
u3360:
	line	400
	
l8143:	
;main.c: 399: {
;main.c: 400: DecimalFlage = 3;
	movlw	(03h)
	movwf	(_DecimalFlage)
	line	401
	
l8145:	
;main.c: 401: Tp2 = Tp2*10;
	movlw	0x0
	movwf	(?___ftmul)
	movlw	0x20
	movwf	(?___ftmul+1)
	movlw	0x41
	movwf	(?___ftmul+2)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	0+(?___ftmul)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	1+(?___ftmul)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(1+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(2+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+2)^080h
	goto	l8137
	line	404
	
l8149:	
;main.c: 404: else if(Tp2<99 && Tp2>9)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge+2)
	movlw	0x0
	movwf	0+(?___ftge)+03h
	movlw	0xc6
	movwf	1+(?___ftge)+03h
	movlw	0x42
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3371
	goto	u3370
u3371:
	goto	l8159
u3370:
	
l8151:	
	movlw	0x0
	movwf	(?___ftge)
	movlw	0x10
	movwf	(?___ftge+1)
	movlw	0x41
	movwf	(?___ftge+2)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	0+(?___ftge)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	1+(?___ftge)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3381
	goto	u3380
u3381:
	goto	l8159
u3380:
	line	406
	
l8153:	
;main.c: 405: {
;main.c: 406: DecimalFlage = 2;
	movlw	(02h)
	movwf	(_DecimalFlage)
	line	407
	
l8155:	
;main.c: 407: Tp2 = Tp2*100;
	movlw	0x0
	movwf	(?___ftmul)
	movlw	0xc8
	movwf	(?___ftmul+1)
	movlw	0x42
	movwf	(?___ftmul+2)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	0+(?___ftmul)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	1+(?___ftmul)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(1+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(2+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+2)^080h
	goto	l8137
	line	410
	
l8159:	
;main.c: 410: else if(Tp2<9)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___ftge+2)
	movlw	0x0
	movwf	0+(?___ftge)+03h
	movlw	0x10
	movwf	1+(?___ftge)+03h
	movlw	0x41
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3391
	goto	u3390
u3391:
	goto	l1669
u3390:
	line	412
	
l8161:	
;main.c: 411: {
;main.c: 412: DecimalFlage = 1;
	clrf	(_DecimalFlage)
	incf	(_DecimalFlage),f
	line	413
	
l8163:	
;main.c: 413: Tp2 = Tp2*1000;
	movlw	0x0
	movwf	(?___ftmul)
	movlw	0x7a
	movwf	(?___ftmul+1)
	movlw	0x44
	movwf	(?___ftmul+2)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	0+(?___ftmul)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	1+(?___ftmul)+03h
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(1+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	(2+(?___ftmul)),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp2+2)^080h
	line	414
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+2)
	fcall	___fttol
	goto	l8165
	line	416
	
l1669:	
	
l8165:	
;main.c: 415: }
;main.c: 416: DecimalFlag= DecimalFlage;
	movf	(_DecimalFlage),w
	movwf	(_DecimalFlag)
	line	417
	
l8167:	
;main.c: 417: Tp = (unsigned int)Tp2;
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp2+2)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?___fttol+2)
	fcall	___fttol
	movf	1+(((0+(?___fttol)))),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp+1)^080h
	bcf	status, 5	;RP0=0, select bank0
	movf	0+(((0+(?___fttol)))),w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(main@Tp)^080h
	line	418
	
l8169:	
;main.c: 418: decimal_bcd(Tp);
	movf	(main@Tp+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?_decimal_bcd+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?_decimal_bcd)
	fcall	_decimal_bcd
	line	419
	
l8171:	
;main.c: 419: LedStatus.part.bit2 = 1;
	bcf	status, 5	;RP0=0, select bank0
	bsf	(_LedStatus),2
	line	420
;main.c: 420: }
	goto	l8177
	line	421
	
l1665:	
	line	423
;main.c: 421: else
;main.c: 422: {
;main.c: 423: LedStatus.part.bit2 = 0;
	bcf	(_LedStatus),2
	line	424
	
l8173:	
;main.c: 424: DecimalFlag= DecimalFlage;
	movf	(_DecimalFlage),w
	movwf	(_DecimalFlag)
	line	425
	
l8175:	
;main.c: 425: decimal_bcd(Tp);
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp+1)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?_decimal_bcd+1)
	bsf	status, 5	;RP0=1, select bank1
	movf	(main@Tp)^080h,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(?_decimal_bcd)
	fcall	_decimal_bcd
	line	427
	
l8177:	
;main.c: 426: }
;main.c: 427: if(key_flage == 1)
	btfss	(_key_flage/8),(_key_flage)&7
	goto	u3401
	goto	u3400
u3401:
	goto	l8183
u3400:
	line	429
	
l8179:	
;main.c: 428: {
;main.c: 429: key_flage = 0;
	bcf	(_key_flage/8),(_key_flage)&7
	line	430
	
l8181:	
;main.c: 430: set_ct_ratio();
	fcall	_set_ct_ratio
	line	432
	
l8183:	
;main.c: 431: }
;main.c: 432: DelayMs(10);
	movlw	(0Ah)
	fcall	_DelayMs
	goto	l8077
	global	start
	ljmp	start
	opt stack 0
psect	maintext
	line	435
GLOBAL	__end_of_main
	__end_of_main:
	signat	_main,88
	global	_voltage_adc_cal

;; *************** function _voltage_adc_cal *****************
;; Defined at:
;;		line 542 in file "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
;; Parameters:    Size  Location     Type
;;  channel         1    wreg     unsigned char 
;; Auto vars:     Size  Location     Type
;;  channel         1   28[BANK0 ] unsigned char 
;;  ExitDelay       4    0        long 
;;  no_samples      2   31[BANK0 ] unsigned int 
;;  no_samples1     2   29[BANK0 ] unsigned int 
;;  AdcCh           1   33[BANK0 ] struct chartype
;; Return value:  Size  Location     Type
;;		None               void
;; Registers used:
;;		wreg, status,2, status,0, btemp+1, pclath, cstack
;; Tracked objects:
;;		On entry : 40/0
;;		On exit  : 60/0
;;		Unchanged: FFE00/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       0       0       0
;;      Locals:         0       6       0       0
;;      Temps:          0       2       0       0
;;      Totals:         0       8       0       0
;;Total ram usage:        8 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    3
;; This function calls:
;;		_DelayMs
;;		___altoft
;;		___ftadd
;;		___lwtoft
;;		___ftdiv
;;		___fttol
;; This function is called by:
;;		_main
;; This function uses a non-reentrant model
;;
psect	text717,local,class=CODE,delta=2,merge=1
global __ptext717
__ptext717:	;psect for function _voltage_adc_cal
psect	text717
	file	"E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
	line	542
	global	__size_of_voltage_adc_cal
	__size_of_voltage_adc_cal	equ	__end_of_voltage_adc_cal-_voltage_adc_cal
	
_voltage_adc_cal:	
	opt	stack 4
; Regs used in _voltage_adc_cal: [wreg+status,2+status,0+btemp+1+pclath+cstack]
;voltage_adc_cal@channel stored from wreg
	line	548
	bcf	status, 5	;RP0=0, select bank0
	movwf	(voltage_adc_cal@channel)
	
l8213:	
;main.c: 544: unsigned int no_samples,no_samples1;
;main.c: 545: long ExitDelay;
;main.c: 546: union chartype AdcCh;
;main.c: 548: tmp1 = 0;
	clrf	(_tmp1)
	clrf	(_tmp1+1)
	clrf	(_tmp1+2)
	line	549
	
l8215:	
;main.c: 549: no_samples1 = 0;
	clrf	(voltage_adc_cal@no_samples1)
	clrf	(voltage_adc_cal@no_samples1+1)
	line	550
	
l8217:	
;main.c: 550: tmp = 0;
	clrf	(_tmp)
	clrf	(_tmp+1)
	clrf	(_tmp+2)
	clrf	(_tmp+3)
	line	551
	
l8219:	
;main.c: 551: VCFG = 0;
	bcf	(254/8),(254)&7	;volatile
	line	552
	
l8221:	
;main.c: 552: ADCS1 = 1;
	bsf	status, 5	;RP0=1, select bank1
	bsf	(1277/8)^080h,(1277)&7	;volatile
	line	553
	
l8223:	
;main.c: 553: ADCS0 = 1;
	bsf	(1276/8)^080h,(1276)&7	;volatile
	line	554
	
l8225:	
;main.c: 554: ADFM = 1;
	bcf	status, 5	;RP0=0, select bank0
	bsf	(255/8),(255)&7	;volatile
	line	555
	
l8227:	
;main.c: 555: ADON = 1;
	bsf	(248/8),(248)&7	;volatile
	line	558
	
l8229:	
;main.c: 558: AdcCh.byte = channel;
	movf	(voltage_adc_cal@channel),w
	movwf	(voltage_adc_cal@AdcCh)
	line	559
	
l8231:	
;main.c: 559: CHS0 = AdcCh.part.bit0;
	movf	(voltage_adc_cal@AdcCh),w
	andlw	(1<<1)-1
	movwf	(??_voltage_adc_cal+0)+0
	rrf	(??_voltage_adc_cal+0)+0,w
	btfsc	status,0
	goto	u3471
	goto	u3470
	
u3471:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bsf	(250/8),(250)&7	;volatile
	goto	u3484
u3470:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bcf	(250/8),(250)&7	;volatile
u3484:
	line	560
	
l8233:	
;main.c: 560: CHS1 = AdcCh.part.bit1;
	rrf	(voltage_adc_cal@AdcCh),w
	andlw	(1<<1)-1
	movwf	(??_voltage_adc_cal+0)+0
	rrf	(??_voltage_adc_cal+0)+0,w
	btfsc	status,0
	goto	u3491
	goto	u3490
	
u3491:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bsf	(251/8),(251)&7	;volatile
	goto	u3504
u3490:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bcf	(251/8),(251)&7	;volatile
u3504:
	line	561
	
l8235:	
;main.c: 561: CHS2 = AdcCh.part.bit2;
	rrf	(voltage_adc_cal@AdcCh),w
	movwf	(??_voltage_adc_cal+0)+0
	rrf	(??_voltage_adc_cal+0)+0,w
	andlw	(1<<1)-1
	movwf	(??_voltage_adc_cal+1)+0
	rrf	(??_voltage_adc_cal+1)+0,w
	btfsc	status,0
	goto	u3511
	goto	u3510
	
u3511:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bsf	(252/8),(252)&7	;volatile
	goto	u3524
u3510:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bcf	(252/8),(252)&7	;volatile
u3524:
	line	562
	
l8237:	
;main.c: 562: CHS3 = AdcCh.part.bit3;
	rrf	(voltage_adc_cal@AdcCh),w
	movwf	(??_voltage_adc_cal+0)+0
	rrf	(??_voltage_adc_cal+0)+0,f
	rrf	(??_voltage_adc_cal+0)+0,w
	andlw	(1<<1)-1
	movwf	(??_voltage_adc_cal+1)+0
	rrf	(??_voltage_adc_cal+1)+0,w
	btfsc	status,0
	goto	u3531
	goto	u3530
	
u3531:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bsf	(253/8),(253)&7	;volatile
	goto	u3544
u3530:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bcf	(253/8),(253)&7	;volatile
u3544:
	line	563
	
l8239:	
;main.c: 563: DelayMs(5);
	movlw	(05h)
	fcall	_DelayMs
	line	564
	
l8241:	
;main.c: 565: ExitDelay = 0;
	clrf	(_tmp)
	clrf	(_tmp+1)
	clrf	(_tmp+2)
	clrf	(_tmp+3)
	line	569
	
l8243:	
;main.c: 569: for(no_samples=0;no_samples<1000;no_samples++)
	clrf	(voltage_adc_cal@no_samples)
	clrf	(voltage_adc_cal@no_samples+1)
	line	573
	
l8249:	
;main.c: 570: {
;main.c: 573: { delayus_variable=(unsigned char)(20/2); asm("nop"); } asm("decfsz _delayus_variable,f"); asm("goto $ - 2");;
	movlw	(0Ah)
	movwf	(_delayus_variable)
# 573 "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
nop ;# 
# 573 "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
decfsz _delayus_variable,f ;# 
# 573 "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
goto $ - 2 ;# 
psect	text717
	line	574
;main.c: 574: while(GO_DONE == 1) continue;
	
l1719:	
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	btfsc	(249/8),(249)&7	;volatile
	goto	u3551
	goto	u3550
u3551:
	goto	l1719
u3550:
	
l1721:	
	line	575
;main.c: 575: GO_DONE = 1;
	bsf	(249/8),(249)&7	;volatile
	line	576
;main.c: 576: while(GO_DONE == 1) continue;
	
l1722:	
	btfsc	(249/8),(249)&7	;volatile
	goto	u3561
	goto	u3560
u3561:
	goto	l1722
u3560:
	line	577
	
l8251:	
;main.c: 577: tmp = (ADRESH*256)+ADRESL;
	movf	(30),w	;volatile
	movwf	(??_voltage_adc_cal+0)+0+0
	clrf	(??_voltage_adc_cal+0)+0+1
	movf	(??_voltage_adc_cal+0)+0,w
	movwf	(??_voltage_adc_cal+0)+1
	clrf	(??_voltage_adc_cal+0)+0
	bsf	status, 5	;RP0=1, select bank1
	movf	(158)^080h,w	;volatile
	bcf	status, 5	;RP0=0, select bank0
	addwf	0+(??_voltage_adc_cal+0)+0,w
	movwf	(_tmp)
	movlw	0
	skipnc
	movlw	1
	addwf	1+(??_voltage_adc_cal+0)+0,w
	movwf	1+(_tmp)
	clrf	(_tmp)+2
	btfsc	(_tmp)+1,7
	decf	2+(_tmp),f
	movf	(_tmp)+2,w
	movwf	3+(_tmp)
	line	578
	
l8253:	
;main.c: 578: if(tmp>1)
	movf	(_tmp+3),w
	xorlw	80h
	movwf	btemp+1
	movlw	0
	xorlw	80h
	subwf	btemp+1,w
	
	skipz
	goto	u3573
	movlw	0
	subwf	(_tmp+2),w
	skipz
	goto	u3573
	movlw	0
	subwf	(_tmp+1),w
	skipz
	goto	u3573
	movlw	02h
	subwf	(_tmp),w
u3573:
	skipc
	goto	u3571
	goto	u3570
u3571:
	goto	l8259
u3570:
	line	580
	
l8255:	
;main.c: 579: {
;main.c: 580: no_samples1++;
	incf	(voltage_adc_cal@no_samples1),f
	skipnz
	incf	(voltage_adc_cal@no_samples1+1),f
	line	581
	
l8257:	
;main.c: 581: tmp1 = tmp1+tmp;
	movf	(_tmp+3),w
	movwf	(?___altoft+3)
	movf	(_tmp+2),w
	movwf	(?___altoft+2)
	movf	(_tmp+1),w
	movwf	(?___altoft+1)
	movf	(_tmp),w
	movwf	(?___altoft)

	fcall	___altoft
	movf	(0+(?___altoft)),w
	movwf	(?___ftadd)
	movf	(1+(?___altoft)),w
	movwf	(?___ftadd+1)
	movf	(2+(?___altoft)),w
	movwf	(?___ftadd+2)
	movf	(_tmp1),w
	movwf	0+(?___ftadd)+03h
	movf	(_tmp1+1),w
	movwf	1+(?___ftadd)+03h
	movf	(_tmp1+2),w
	movwf	2+(?___ftadd)+03h
	fcall	___ftadd
	movf	(0+(?___ftadd)),w
	movwf	(_tmp1)
	movf	(1+(?___ftadd)),w
	movwf	(_tmp1+1)
	movf	(2+(?___ftadd)),w
	movwf	(_tmp1+2)
	line	569
	
l8259:	
	incf	(voltage_adc_cal@no_samples),f
	skipnz
	incf	(voltage_adc_cal@no_samples+1),f
	
l8261:	
	movlw	high(03E8h)
	subwf	(voltage_adc_cal@no_samples+1),w
	movlw	low(03E8h)
	skipnz
	subwf	(voltage_adc_cal@no_samples),w
	skipc
	goto	u3581
	goto	u3580
u3581:
	goto	l8249
u3580:
	line	585
	
l8263:	
;main.c: 582: }
;main.c: 583: }
;main.c: 585: tmp1 = tmp1/no_samples1;
	movf	(voltage_adc_cal@no_samples1+1),w
	movwf	(?___lwtoft+1)
	movf	(voltage_adc_cal@no_samples1),w
	movwf	(?___lwtoft)
	fcall	___lwtoft
	movf	(0+(?___lwtoft)),w
	movwf	(?___ftdiv)
	movf	(1+(?___lwtoft)),w
	movwf	(?___ftdiv+1)
	movf	(2+(?___lwtoft)),w
	movwf	(?___ftdiv+2)
	movf	(_tmp1),w
	movwf	0+(?___ftdiv)+03h
	movf	(_tmp1+1),w
	movwf	1+(?___ftdiv)+03h
	movf	(_tmp1+2),w
	movwf	2+(?___ftdiv)+03h
	fcall	___ftdiv
	movf	(0+(?___ftdiv)),w
	movwf	(_tmp1)
	movf	(1+(?___ftdiv)),w
	movwf	(_tmp1+1)
	movf	(2+(?___ftdiv)),w
	movwf	(_tmp1+2)
	line	586
;main.c: 586: ZeroAdc = (unsigned int)tmp1;
	movf	(_tmp1),w
	movwf	(?___fttol)
	movf	(_tmp1+1),w
	movwf	(?___fttol+1)
	movf	(_tmp1+2),w
	movwf	(?___fttol+2)
	fcall	___fttol
	movf	1+(((0+(?___fttol)))),w
	movwf	(_ZeroAdc+1)
	movf	0+(((0+(?___fttol)))),w
	movwf	(_ZeroAdc)
	line	589
	
l1726:	
	return
	opt stack 0
GLOBAL	__end_of_voltage_adc_cal
	__end_of_voltage_adc_cal:
	signat	_voltage_adc_cal,4216
	global	_voltage_adc

;; *************** function _voltage_adc *****************
;; Defined at:
;;		line 461 in file "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
;; Parameters:    Size  Location     Type
;;  channel         1    wreg     unsigned char 
;; Auto vars:     Size  Location     Type
;;  channel         1   57[BANK0 ] unsigned char 
;;  ExitDelay       2   55[BANK0 ] unsigned int 
;;  no_samples      2   52[BANK0 ] unsigned int 
;;  no_samples1     2   50[BANK0 ] unsigned int 
;;  AdcCh           1   54[BANK0 ] struct chartype
;; Return value:  Size  Location     Type
;;		None               void
;; Registers used:
;;		wreg, fsr0l, fsr0h, fsr1l, fsr1h, status,2, status,0, btemp+1, pclath, cstack
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFE00/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       0       0       0
;;      Locals:         0       8       0       0
;;      Temps:          0       2       0       0
;;      Totals:         0      10       0       0
;;Total ram usage:       10 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    5
;; This function calls:
;;		_DelayMs
;;		_get_adc
;;		_abs
;;		___lmul
;;		___altoft
;;		___ftadd
;;		___lwtoft
;;		___ftdiv
;;		_sqrt
;;		___ftge
;; This function is called by:
;;		_main
;; This function uses a non-reentrant model
;;
psect	text718,local,class=CODE,delta=2,merge=1
global __ptext718
__ptext718:	;psect for function _voltage_adc
psect	text718
	file	"E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
	line	461
	global	__size_of_voltage_adc
	__size_of_voltage_adc	equ	__end_of_voltage_adc-_voltage_adc
	
_voltage_adc:	
	opt	stack 2
; Regs used in _voltage_adc: [allreg]
;voltage_adc@channel stored from wreg
	line	467
	movwf	(voltage_adc@channel)
	
l8265:	
;main.c: 463: unsigned int no_samples,no_samples1;
;main.c: 464: unsigned int ExitDelay;
;main.c: 465: union chartype AdcCh;
;main.c: 467: tmp1 = 0;
	clrf	(_tmp1)
	clrf	(_tmp1+1)
	clrf	(_tmp1+2)
	line	468
	
l8267:	
;main.c: 468: no_samples1 = 0;
	clrf	(voltage_adc@no_samples1)
	clrf	(voltage_adc@no_samples1+1)
	line	469
	
l8269:	
;main.c: 469: tmp = 0;
	clrf	(_tmp)
	clrf	(_tmp+1)
	clrf	(_tmp+2)
	clrf	(_tmp+3)
	line	470
	
l8271:	
;main.c: 470: VCFG = 0;
	bcf	(254/8),(254)&7	;volatile
	line	471
	
l8273:	
;main.c: 471: ADCS1 = 0;
	bsf	status, 5	;RP0=1, select bank1
	bcf	(1277/8)^080h,(1277)&7	;volatile
	line	472
	
l8275:	
;main.c: 472: ADCS0 = 1;
	bsf	(1276/8)^080h,(1276)&7	;volatile
	line	473
	
l8277:	
;main.c: 473: ADFM = 1;
	bcf	status, 5	;RP0=0, select bank0
	bsf	(255/8),(255)&7	;volatile
	line	474
	
l8279:	
;main.c: 474: ADON = 1;
	bsf	(248/8),(248)&7	;volatile
	line	477
	
l8281:	
;main.c: 477: AdcCh.byte = channel;
	movf	(voltage_adc@channel),w
	movwf	(voltage_adc@AdcCh)
	line	478
	
l8283:	
;main.c: 478: CHS0 = AdcCh.part.bit0;
	movf	(voltage_adc@AdcCh),w
	andlw	(1<<1)-1
	movwf	(??_voltage_adc+0)+0
	rrf	(??_voltage_adc+0)+0,w
	btfsc	status,0
	goto	u3591
	goto	u3590
	
u3591:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bsf	(250/8),(250)&7	;volatile
	goto	u3604
u3590:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bcf	(250/8),(250)&7	;volatile
u3604:
	line	479
	
l8285:	
;main.c: 479: CHS1 = AdcCh.part.bit1;
	rrf	(voltage_adc@AdcCh),w
	andlw	(1<<1)-1
	movwf	(??_voltage_adc+0)+0
	rrf	(??_voltage_adc+0)+0,w
	btfsc	status,0
	goto	u3611
	goto	u3610
	
u3611:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bsf	(251/8),(251)&7	;volatile
	goto	u3624
u3610:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bcf	(251/8),(251)&7	;volatile
u3624:
	line	480
	
l8287:	
;main.c: 480: CHS2 = AdcCh.part.bit2;
	rrf	(voltage_adc@AdcCh),w
	movwf	(??_voltage_adc+0)+0
	rrf	(??_voltage_adc+0)+0,w
	andlw	(1<<1)-1
	movwf	(??_voltage_adc+1)+0
	rrf	(??_voltage_adc+1)+0,w
	btfsc	status,0
	goto	u3631
	goto	u3630
	
u3631:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bsf	(252/8),(252)&7	;volatile
	goto	u3644
u3630:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bcf	(252/8),(252)&7	;volatile
u3644:
	line	481
	
l8289:	
;main.c: 481: CHS3 = AdcCh.part.bit3;
	rrf	(voltage_adc@AdcCh),w
	movwf	(??_voltage_adc+0)+0
	rrf	(??_voltage_adc+0)+0,f
	rrf	(??_voltage_adc+0)+0,w
	andlw	(1<<1)-1
	movwf	(??_voltage_adc+1)+0
	rrf	(??_voltage_adc+1)+0,w
	btfsc	status,0
	goto	u3651
	goto	u3650
	
u3651:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bsf	(253/8),(253)&7	;volatile
	goto	u3664
u3650:
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bcf	(253/8),(253)&7	;volatile
u3664:
	line	482
	
l8291:	
;main.c: 482: DelayMs(5);
	movlw	(05h)
	fcall	_DelayMs
	line	483
	
l8293:	
;main.c: 483: tmp = 0;
	clrf	(_tmp)
	clrf	(_tmp+1)
	clrf	(_tmp+2)
	clrf	(_tmp+3)
	line	484
	
l8295:	
;main.c: 484: ExitDelay = 0;
	clrf	(voltage_adc@ExitDelay)
	clrf	(voltage_adc@ExitDelay+1)
	line	487
	
l8297:	
;main.c: 487: tmp = get_adc(channel);
	movf	(voltage_adc@channel),w
	fcall	_get_adc
	movf	(0+(?_get_adc)),w
	movwf	(_tmp)
	movf	(1+(?_get_adc)),w
	movwf	(_tmp+1)
	movlw	0
	btfsc	(_tmp+1),7
	movlw	255
	movwf	(_tmp+2)
	movwf	(_tmp+3)
	line	488
	
l8299:	
;main.c: 488: if(tmp<=2)
	movf	(_tmp+3),w
	xorlw	80h
	movwf	btemp+1
	movlw	0
	xorlw	80h
	subwf	btemp+1,w
	
	skipz
	goto	u3673
	movlw	0
	subwf	(_tmp+2),w
	skipz
	goto	u3673
	movlw	0
	subwf	(_tmp+1),w
	skipz
	goto	u3673
	movlw	03h
	subwf	(_tmp),w
u3673:
	skipnc
	goto	u3671
	goto	u3670
u3671:
	goto	l8321
u3670:
	goto	l8311
	line	492
	
l8303:	
;main.c: 491: {
;main.c: 492: tmp = get_adc(channel);
	movf	(voltage_adc@channel),w
	fcall	_get_adc
	movf	(0+(?_get_adc)),w
	movwf	(_tmp)
	movf	(1+(?_get_adc)),w
	movwf	(_tmp+1)
	movlw	0
	btfsc	(_tmp+1),7
	movlw	255
	movwf	(_tmp+2)
	movwf	(_tmp+3)
	line	493
	
l8305:	
;main.c: 493: ExitDelay++;
	incf	(voltage_adc@ExitDelay),f
	skipnz
	incf	(voltage_adc@ExitDelay+1),f
	line	494
	
l8307:	
;main.c: 494: if(ExitDelay>3000)
	movlw	high(0BB9h)
	subwf	(voltage_adc@ExitDelay+1),w
	movlw	low(0BB9h)
	skipnz
	subwf	(voltage_adc@ExitDelay),w
	skipc
	goto	u3681
	goto	u3680
u3681:
	goto	l8311
u3680:
	goto	l1698
	line	490
	
l8311:	
	movf	(_tmp+3),w
	xorlw	80h
	movwf	btemp+1
	movlw	0
	xorlw	80h
	subwf	btemp+1,w
	
	skipz
	goto	u3693
	movlw	0
	subwf	(_tmp+2),w
	skipz
	goto	u3693
	movlw	0
	subwf	(_tmp+1),w
	skipz
	goto	u3693
	movlw	03h
	subwf	(_tmp),w
u3693:
	skipc
	goto	u3691
	goto	u3690
u3691:
	goto	l8303
u3690:
	goto	l8335
	line	503
	
l8313:	
;main.c: 502: {
;main.c: 503: tmp = get_adc(channel);
	movf	(voltage_adc@channel),w
	fcall	_get_adc
	movf	(0+(?_get_adc)),w
	movwf	(_tmp)
	movf	(1+(?_get_adc)),w
	movwf	(_tmp+1)
	movlw	0
	btfsc	(_tmp+1),7
	movlw	255
	movwf	(_tmp+2)
	movwf	(_tmp+3)
	line	504
	
l8315:	
;main.c: 504: ExitDelay++;
	incf	(voltage_adc@ExitDelay),f
	skipnz
	incf	(voltage_adc@ExitDelay+1),f
	line	505
	
l8317:	
;main.c: 505: if(ExitDelay>3000)
	movlw	high(0BB9h)
	subwf	(voltage_adc@ExitDelay+1),w
	movlw	low(0BB9h)
	skipnz
	subwf	(voltage_adc@ExitDelay),w
	skipc
	goto	u3701
	goto	u3700
u3701:
	goto	l8321
u3700:
	goto	l1698
	line	501
	
l8321:	
	movf	(_tmp+3),w
	xorlw	80h
	movwf	btemp+1
	movlw	0
	xorlw	80h
	subwf	btemp+1,w
	
	skipz
	goto	u3713
	movlw	0
	subwf	(_tmp+2),w
	skipz
	goto	u3713
	movlw	0
	subwf	(_tmp+1),w
	skipz
	goto	u3713
	movlw	02h
	subwf	(_tmp),w
u3713:
	skipnc
	goto	u3711
	goto	u3710
u3711:
	goto	l8313
u3710:
	line	509
	
l8323:	
;main.c: 508: }
;main.c: 509: ExitDelay = 0;
	clrf	(voltage_adc@ExitDelay)
	clrf	(voltage_adc@ExitDelay+1)
	line	510
;main.c: 510: while(tmp <= 2)
	goto	l8333
	line	512
	
l8325:	
;main.c: 511: {
;main.c: 512: tmp = get_adc(channel);
	movf	(voltage_adc@channel),w
	fcall	_get_adc
	movf	(0+(?_get_adc)),w
	movwf	(_tmp)
	movf	(1+(?_get_adc)),w
	movwf	(_tmp+1)
	movlw	0
	btfsc	(_tmp+1),7
	movlw	255
	movwf	(_tmp+2)
	movwf	(_tmp+3)
	line	513
	
l8327:	
;main.c: 513: ExitDelay++;
	incf	(voltage_adc@ExitDelay),f
	skipnz
	incf	(voltage_adc@ExitDelay+1),f
	line	514
	
l8329:	
;main.c: 514: if(ExitDelay>3000)
	movlw	high(0BB9h)
	subwf	(voltage_adc@ExitDelay+1),w
	movlw	low(0BB9h)
	skipnz
	subwf	(voltage_adc@ExitDelay),w
	skipc
	goto	u3721
	goto	u3720
u3721:
	goto	l8333
u3720:
	goto	l1698
	line	510
	
l8333:	
	movf	(_tmp+3),w
	xorlw	80h
	movwf	btemp+1
	movlw	0
	xorlw	80h
	subwf	btemp+1,w
	
	skipz
	goto	u3733
	movlw	0
	subwf	(_tmp+2),w
	skipz
	goto	u3733
	movlw	0
	subwf	(_tmp+1),w
	skipz
	goto	u3733
	movlw	03h
	subwf	(_tmp),w
u3733:
	skipc
	goto	u3731
	goto	u3730
u3731:
	goto	l8325
u3730:
	line	519
	
l8335:	
	line	520
;main.c: 520: for(no_samples=0;no_samples<=1000;no_samples++)
	clrf	(voltage_adc@no_samples)
	clrf	(voltage_adc@no_samples+1)
	line	522
	
l8341:	
;main.c: 521: {
;main.c: 522: tmp = get_adc(channel);
	movf	(voltage_adc@channel),w
	fcall	_get_adc
	movf	(0+(?_get_adc)),w
	movwf	(_tmp)
	movf	(1+(?_get_adc)),w
	movwf	(_tmp+1)
	movlw	0
	btfsc	(_tmp+1),7
	movlw	255
	movwf	(_tmp+2)
	movwf	(_tmp+3)
	line	523
	
l8343:	
;main.c: 523: if(tmp<-2 || tmp>2)
	movf	(_tmp+3),w
	xorlw	80h
	movwf	btemp+1
	movlw	0FFh
	xorlw	80h
	subwf	btemp+1,w
	
	skipz
	goto	u3743
	movlw	0FFh
	subwf	(_tmp+2),w
	skipz
	goto	u3743
	movlw	0FFh
	subwf	(_tmp+1),w
	skipz
	goto	u3743
	movlw	0FEh
	subwf	(_tmp),w
u3743:
	skipc
	goto	u3741
	goto	u3740
u3741:
	goto	l8347
u3740:
	
l8345:	
	movf	(_tmp+3),w
	xorlw	80h
	movwf	btemp+1
	movlw	0
	xorlw	80h
	subwf	btemp+1,w
	
	skipz
	goto	u3753
	movlw	0
	subwf	(_tmp+2),w
	skipz
	goto	u3753
	movlw	0
	subwf	(_tmp+1),w
	skipz
	goto	u3753
	movlw	03h
	subwf	(_tmp),w
u3753:
	skipc
	goto	u3751
	goto	u3750
u3751:
	goto	l8355
u3750:
	line	525
	
l8347:	
;main.c: 524: {
;main.c: 525: no_samples1++;
	incf	(voltage_adc@no_samples1),f
	skipnz
	incf	(voltage_adc@no_samples1+1),f
	line	526
	
l8349:	
;main.c: 526: tmp = abs(tmp);
	movf	(_tmp+1),w
	movwf	(?_abs+1)
	movf	(_tmp),w
	movwf	(?_abs)
	fcall	_abs
	movf	(0+(?_abs)),w
	movwf	(_tmp)
	movf	(1+(?_abs)),w
	movwf	(_tmp+1)
	movlw	0
	btfsc	(_tmp+1),7
	movlw	255
	movwf	(_tmp+2)
	movwf	(_tmp+3)
	line	527
	
l8351:	
;main.c: 527: tmp = tmp*tmp;
	movf	(_tmp+3),w
	movwf	(?___lmul+3)
	movf	(_tmp+2),w
	movwf	(?___lmul+2)
	movf	(_tmp+1),w
	movwf	(?___lmul+1)
	movf	(_tmp),w
	movwf	(?___lmul)

	movf	(_tmp+3),w
	movwf	3+(?___lmul)+04h
	movf	(_tmp+2),w
	movwf	2+(?___lmul)+04h
	movf	(_tmp+1),w
	movwf	1+(?___lmul)+04h
	movf	(_tmp),w
	movwf	0+(?___lmul)+04h

	fcall	___lmul
	movf	(3+(?___lmul)),w
	movwf	(_tmp+3)
	movf	(2+(?___lmul)),w
	movwf	(_tmp+2)
	movf	(1+(?___lmul)),w
	movwf	(_tmp+1)
	movf	(0+(?___lmul)),w
	movwf	(_tmp)

	line	528
	
l8353:	
;main.c: 528: tmp1 = tmp1+tmp;
	movf	(_tmp+3),w
	movwf	(?___altoft+3)
	movf	(_tmp+2),w
	movwf	(?___altoft+2)
	movf	(_tmp+1),w
	movwf	(?___altoft+1)
	movf	(_tmp),w
	movwf	(?___altoft)

	fcall	___altoft
	movf	(0+(?___altoft)),w
	movwf	(?___ftadd)
	movf	(1+(?___altoft)),w
	movwf	(?___ftadd+1)
	movf	(2+(?___altoft)),w
	movwf	(?___ftadd+2)
	movf	(_tmp1),w
	movwf	0+(?___ftadd)+03h
	movf	(_tmp1+1),w
	movwf	1+(?___ftadd)+03h
	movf	(_tmp1+2),w
	movwf	2+(?___ftadd)+03h
	fcall	___ftadd
	movf	(0+(?___ftadd)),w
	movwf	(_tmp1)
	movf	(1+(?___ftadd)),w
	movwf	(_tmp1+1)
	movf	(2+(?___ftadd)),w
	movwf	(_tmp1+2)
	line	520
	
l8355:	
	incf	(voltage_adc@no_samples),f
	skipnz
	incf	(voltage_adc@no_samples+1),f
	
l8357:	
	movlw	high(03E9h)
	subwf	(voltage_adc@no_samples+1),w
	movlw	low(03E9h)
	skipnz
	subwf	(voltage_adc@no_samples),w
	skipc
	goto	u3761
	goto	u3760
u3761:
	goto	l8341
u3760:
	line	532
	
l8359:	
;main.c: 529: }
;main.c: 530: }
;main.c: 532: tmp1 = tmp1/no_samples1;
	movf	(voltage_adc@no_samples1+1),w
	movwf	(?___lwtoft+1)
	movf	(voltage_adc@no_samples1),w
	movwf	(?___lwtoft)
	fcall	___lwtoft
	movf	(0+(?___lwtoft)),w
	movwf	(?___ftdiv)
	movf	(1+(?___lwtoft)),w
	movwf	(?___ftdiv+1)
	movf	(2+(?___lwtoft)),w
	movwf	(?___ftdiv+2)
	movf	(_tmp1),w
	movwf	0+(?___ftdiv)+03h
	movf	(_tmp1+1),w
	movwf	1+(?___ftdiv)+03h
	movf	(_tmp1+2),w
	movwf	2+(?___ftdiv)+03h
	fcall	___ftdiv
	movf	(0+(?___ftdiv)),w
	movwf	(_tmp1)
	movf	(1+(?___ftdiv)),w
	movwf	(_tmp1+1)
	movf	(2+(?___ftdiv)),w
	movwf	(_tmp1+2)
	line	533
	
l8361:	
;main.c: 533: tmp1 = sqrt(tmp1);
	movf	(_tmp1),w
	movwf	(?_sqrt)
	movf	(_tmp1+1),w
	movwf	(?_sqrt+1)
	movf	(_tmp1+2),w
	movwf	(?_sqrt+2)
	fcall	_sqrt
	movf	(0+(?_sqrt)),w
	movwf	(_tmp1)
	movf	(1+(?_sqrt)),w
	movwf	(_tmp1+1)
	movf	(2+(?_sqrt)),w
	movwf	(_tmp1+2)
	line	534
	
l8363:	
;main.c: 534: if(tmp1<2)
	movf	(_tmp1),w
	movwf	(?___ftge)
	movf	(_tmp1+1),w
	movwf	(?___ftge+1)
	movf	(_tmp1+2),w
	movwf	(?___ftge+2)
	movlw	0x0
	movwf	0+(?___ftge)+03h
	movlw	0x0
	movwf	1+(?___ftge)+03h
	movlw	0x40
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfsc	status,0
	goto	u3771
	goto	u3770
u3771:
	goto	l1698
u3770:
	line	535
	
l8365:	
;main.c: 535: tmp1 = 0;
	clrf	(_tmp1)
	clrf	(_tmp1+1)
	clrf	(_tmp1+2)
	line	537
	
l1698:	
	return
	opt stack 0
GLOBAL	__end_of_voltage_adc
	__end_of_voltage_adc:
	signat	_voltage_adc,4216
	global	_set_ct_ratio

;; *************** function _set_ct_ratio *****************
;; Defined at:
;;		line 593 in file "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
;; Parameters:    Size  Location     Type
;;		None
;; Auto vars:     Size  Location     Type
;;  key_delay       2   32[BANK0 ] unsigned int 
;;  exit_delay      1   31[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;		None               void
;; Registers used:
;;		wreg, fsr0l, fsr0h, status,2, status,0, btemp+1, pclath, cstack
;; Tracked objects:
;;		On entry : 140/0
;;		On exit  : 60/60
;;		Unchanged: FFE00/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       0       0       0
;;      Locals:         0       3       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0       3       0       0
;;Total ram usage:        3 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    4
;; This function calls:
;;		_DelayS
;;		_ReadCtRatio
;;		_decimal_bcd
;;		_DelayMs
;;		_eeprom_write
;; This function is called by:
;;		_main
;; This function uses a non-reentrant model
;;
psect	text719,local,class=CODE,delta=2,merge=1
global __ptext719
__ptext719:	;psect for function _set_ct_ratio
psect	text719
	file	"E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
	line	593
	global	__size_of_set_ct_ratio
	__size_of_set_ct_ratio	equ	__end_of_set_ct_ratio-_set_ct_ratio
	
_set_ct_ratio:	
	opt	stack 3
; Regs used in _set_ct_ratio: [wreg-fsr0h+status,2+status,0+btemp+1+pclath+cstack]
	line	594
	
l8399:	
;main.c: 594: unsigned int key_delay = 0;
	bcf	status, 5	;RP0=0, select bank0
	clrf	(set_ct_ratio@key_delay)
	clrf	(set_ct_ratio@key_delay+1)
	line	595
;main.c: 595: unsigned char exit_delay = 0;
	clrf	(set_ct_ratio@exit_delay)
	line	597
;main.c: 597: DecimalFlag = 0;
	clrf	(_DecimalFlag)
	line	599
	
l8401:	
;main.c: 599: disp_buff[0] = bcd[11];;
	bsf	status, 5	;RP0=1, select bank1
	movf	0+(_bcd)^080h+0Bh,w
	movwf	(_disp_buff)^080h
	line	600
	
l8403:	
;main.c: 600: disp_buff[1] = bcd[16];
	movf	0+(_bcd)^080h+010h,w
	movwf	0+(_disp_buff)^080h+01h
	line	601
	
l8405:	
;main.c: 601: disp_buff[2] = bcd[10];
	movf	0+(_bcd)^080h+0Ah,w
	movwf	0+(_disp_buff)^080h+02h
	line	602
	
l8407:	
;main.c: 602: disp_buff[3] = bcd[19];
	movf	0+(_bcd)^080h+013h,w
	movwf	0+(_disp_buff)^080h+03h
	line	604
	
l8409:	
;main.c: 604: DelayS(2);
	movlw	(02h)
	fcall	_DelayS
	line	605
	
l8411:	
;main.c: 605: ReadCtRatio();
	fcall	_ReadCtRatio
	line	606
	
l8413:	
;main.c: 606: key_flage = 0;
	bcf	(_key_flage/8),(_key_flage)&7
	line	609
	
l8415:	
;main.c: 608: {
;main.c: 609: decimal_bcd(ct_ratio_read);
	movf	(_ct_ratio_read+1),w
	movwf	(?_decimal_bcd+1)
	movf	(_ct_ratio_read),w
	movwf	(?_decimal_bcd)
	fcall	_decimal_bcd
	line	610
	
l8417:	
;main.c: 610: if(key_flage == 1)
	btfss	(_key_flage/8),(_key_flage)&7
	goto	u3811
	goto	u3810
u3811:
	goto	l8431
u3810:
	line	613
	
l8419:	
;main.c: 611: {
;main.c: 613: exit_delay = 0;
	bcf	status, 5	;RP0=0, select bank0
	clrf	(set_ct_ratio@exit_delay)
	line	614
	
l8421:	
;main.c: 614: key_delay++;
	incf	(set_ct_ratio@key_delay),f
	skipnz
	incf	(set_ct_ratio@key_delay+1),f
	line	615
	
l8423:	
;main.c: 615: ct_ratio_read++;
	incf	(_ct_ratio_read),f
	skipnz
	incf	(_ct_ratio_read+1),f
	skipnz
	incf	(_ct_ratio_read+2),f
	skipnz
	incf	(_ct_ratio_read+3),f
	line	616
	
l8425:	
;main.c: 616: if(ct_ratio_read>=2000)
	movf	(_ct_ratio_read+3),w
	xorlw	80h
	movwf	btemp+1
	movlw	0
	xorlw	80h
	subwf	btemp+1,w
	
	skipz
	goto	u3823
	movlw	0
	subwf	(_ct_ratio_read+2),w
	skipz
	goto	u3823
	movlw	07h
	subwf	(_ct_ratio_read+1),w
	skipz
	goto	u3823
	movlw	0D0h
	subwf	(_ct_ratio_read),w
u3823:
	skipc
	goto	u3821
	goto	u3820
u3821:
	goto	l8429
u3820:
	line	617
	
l8427:	
;main.c: 617: ct_ratio_read = 1;
	clrf	(_ct_ratio_read)
	incf	(_ct_ratio_read),f
	clrf	(_ct_ratio_read+1)
	clrf	(_ct_ratio_read+2)
	clrf	(_ct_ratio_read+3)
	line	618
	
l8429:	
;main.c: 618: key_flage = 0;
	bcf	(_key_flage/8),(_key_flage)&7
	line	619
;main.c: 619: }
	goto	l8435
	line	622
	
l8431:	
;main.c: 620: else
;main.c: 621: {
;main.c: 622: key_delay = 0;
	bcf	status, 5	;RP0=0, select bank0
	clrf	(set_ct_ratio@key_delay)
	clrf	(set_ct_ratio@key_delay+1)
	line	623
	
l8433:	
;main.c: 623: exit_delay++;
	incf	(set_ct_ratio@exit_delay),f
	line	625
	
l8435:	
;main.c: 624: }
;main.c: 625: if(key_delay<10)
	movlw	high(0Ah)
	subwf	(set_ct_ratio@key_delay+1),w
	movlw	low(0Ah)
	skipnz
	subwf	(set_ct_ratio@key_delay),w
	skipnc
	goto	u3831
	goto	u3830
u3831:
	goto	l8439
u3830:
	line	627
	
l8437:	
;main.c: 626: {
;main.c: 627: DelayMs(250);
	movlw	(0FAh)
	fcall	_DelayMs
	line	628
;main.c: 628: }
	goto	l8447
	line	629
	
l8439:	
;main.c: 629: else if(key_delay>10 && key_delay<101)
	movlw	high(0Bh)
	subwf	(set_ct_ratio@key_delay+1),w
	movlw	low(0Bh)
	skipnz
	subwf	(set_ct_ratio@key_delay),w
	skipc
	goto	u3841
	goto	u3840
u3841:
	goto	l8445
u3840:
	
l8441:	
	movlw	high(065h)
	subwf	(set_ct_ratio@key_delay+1),w
	movlw	low(065h)
	skipnz
	subwf	(set_ct_ratio@key_delay),w
	skipnc
	goto	u3851
	goto	u3850
u3851:
	goto	l8445
u3850:
	line	631
	
l8443:	
;main.c: 630: {
;main.c: 631: DelayMs(50);
	movlw	(032h)
	fcall	_DelayMs
	line	632
;main.c: 632: }
	goto	l8447
	line	634
	
l8445:	
;main.c: 633: else
;main.c: 634: DelayMs(10);
	movlw	(0Ah)
	fcall	_DelayMs
	line	635
	
l8447:	
;main.c: 635: if(exit_delay>=15)
	movlw	(0Fh)
	subwf	(set_ct_ratio@exit_delay),w
	skipc
	goto	u3861
	goto	u3860
u3861:
	goto	l8415
u3860:
	line	641
	
l8451:	
;main.c: 638: }
;main.c: 641: eeprom_write(0x00,ct_ratio_read>>8);
	movf	0+(((_ct_ratio_read))+1),w
	movwf	(?_eeprom_write)
	movlw	(0)
	fcall	_eeprom_write
	line	642
;main.c: 642: eeprom_write(0x01,ct_ratio_read);
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	movf	(_ct_ratio_read),w
	movwf	(?_eeprom_write)
	movlw	(01h)
	fcall	_eeprom_write
	line	647
	
l1740:	
	return
	opt stack 0
GLOBAL	__end_of_set_ct_ratio
	__end_of_set_ct_ratio:
	signat	_set_ct_ratio,88
	global	_DelayS

;; *************** function _DelayS *****************
;; Defined at:
;;		line 75 in file "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\delay.c"
;; Parameters:    Size  Location     Type
;;  cnt             1    wreg     unsigned char 
;; Auto vars:     Size  Location     Type
;;  cnt             1    2[BANK0 ] unsigned char 
;;  i               1    3[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;		None               void
;; Registers used:
;;		wreg, status,2, status,0, pclath, cstack
;; Tracked objects:
;;		On entry : 20/20
;;		On exit  : 60/0
;;		Unchanged: FFE00/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       0       0       0
;;      Locals:         0       2       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0       2       0       0
;;Total ram usage:        2 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    2
;; This function calls:
;;		_DelayMs
;; This function is called by:
;;		_main
;;		_set_ct_ratio
;; This function uses a non-reentrant model
;;
psect	text720,local,class=CODE,delta=2,merge=1
global __ptext720
__ptext720:	;psect for function _DelayS
psect	text720
	file	"E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\delay.c"
	line	75
	global	__size_of_DelayS
	__size_of_DelayS	equ	__end_of_DelayS-_DelayS
	
_DelayS:	
	opt	stack 4
; Regs used in _DelayS: [wreg+status,2+status,0+pclath+cstack]
;DelayS@cnt stored from wreg
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	movwf	(DelayS@cnt)
	line	77
;delay.c: 76: unsigned char i;
;delay.c: 77: do {
	
l794:	
	line	78
	
l7953:	
;delay.c: 78: i = 4;
	movlw	(04h)
	movwf	(DelayS@i)
	line	80
	
l7955:	
;delay.c: 80: DelayMs(250);
	movlw	(0FAh)
	fcall	_DelayMs
	line	81
# 81 "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\delay.c"
clrwdt ;# 
psect	text720
	line	82
	
l7957:	
;delay.c: 82: } while(--i);
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	decfsz	(DelayS@i),f
	goto	u3171
	goto	u3170
u3171:
	goto	l7955
u3170:
	
l796:	
	line	83
;delay.c: 83: } while(--cnt);
	decfsz	(DelayS@cnt),f
	goto	u3181
	goto	u3180
u3181:
	goto	l794
u3180:
	line	84
	
l798:	
	return
	opt stack 0
GLOBAL	__end_of_DelayS
	__end_of_DelayS:
	signat	_DelayS,4216
	global	_DelayMs

;; *************** function _DelayMs *****************
;; Defined at:
;;		line 39 in file "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\delay.c"
;; Parameters:    Size  Location     Type
;;  cnt             1    wreg     unsigned char 
;; Auto vars:     Size  Location     Type
;;  cnt             1    0[BANK0 ] unsigned char 
;;  i               1    1[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;		None               void
;; Registers used:
;;		wreg
;; Tracked objects:
;;		On entry : 0/0
;;		On exit  : 60/0
;;		Unchanged: FFE00/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       0       0       0
;;      Locals:         0       2       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0       2       0       0
;;Total ram usage:        2 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		_DelayS
;;		_main
;;		_voltage_adc
;;		_voltage_adc_cal
;;		_set_ct_ratio
;; This function uses a non-reentrant model
;;
psect	text721,local,class=CODE,delta=2,merge=1
global __ptext721
__ptext721:	;psect for function _DelayMs
psect	text721
	file	"E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\delay.c"
	line	39
	global	__size_of_DelayMs
	__size_of_DelayMs	equ	__end_of_DelayMs-_DelayMs
	
_DelayMs:	
	opt	stack 5
; Regs used in _DelayMs: [wreg]
;DelayMs@cnt stored from wreg
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	movwf	(DelayMs@cnt)
	line	41
;delay.c: 40: unsigned char i;
;delay.c: 41: do {
	
l773:	
	line	42
	
l7949:	
;delay.c: 42: i = 4;
	movlw	(04h)
	movwf	(DelayMs@i)
	line	43
;delay.c: 43: do {
	
l774:	
	line	44
;delay.c: 44: { delayus_variable=(unsigned char)(250/2); asm("nop"); } asm("decfsz _delayus_variable,f"); asm("goto $ - 2");;
	movlw	(07Dh)
	movwf	(_delayus_variable)
# 44 "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\delay.c"
nop ;# 
# 44 "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\delay.c"
decfsz _delayus_variable,f ;# 
# 44 "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\delay.c"
goto $ - 2 ;# 
	line	45
# 45 "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\delay.c"
clrwdt ;# 
psect	text721
	line	46
	
l7951:	
;delay.c: 46: } while(--i);
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	decfsz	(DelayMs@i),f
	goto	u3151
	goto	u3150
u3151:
	goto	l774
u3150:
	
l775:	
	line	47
;delay.c: 47: } while(--cnt);
	decfsz	(DelayMs@cnt),f
	goto	u3161
	goto	u3160
u3161:
	goto	l773
u3160:
	line	48
	
l777:	
	return
	opt stack 0
GLOBAL	__end_of_DelayMs
	__end_of_DelayMs:
	signat	_DelayMs,4216
	global	_ReadCtRatio

;; *************** function _ReadCtRatio *****************
;; Defined at:
;;		line 440 in file "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
;; Parameters:    Size  Location     Type
;;		None
;; Auto vars:     Size  Location     Type
;;  Tp              2   29[BANK0 ] unsigned int 
;; Return value:  Size  Location     Type
;;		None               void
;; Registers used:
;;		wreg, status,2, status,0, btemp+1, pclath, cstack
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFE00/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       0       0       0
;;      Locals:         0       2       0       0
;;      Temps:          0       3       0       0
;;      Totals:         0       5       0       0
;;Total ram usage:        5 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    3
;; This function calls:
;;		_eeprom_read
;;		___lwtoft
;;		___ftdiv
;; This function is called by:
;;		_main
;;		_set_ct_ratio
;; This function uses a non-reentrant model
;;
psect	text722,local,class=CODE,delta=2,merge=1
global __ptext722
__ptext722:	;psect for function _ReadCtRatio
psect	text722
	file	"E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
	line	440
	global	__size_of_ReadCtRatio
	__size_of_ReadCtRatio	equ	__end_of_ReadCtRatio-_ReadCtRatio
	
_ReadCtRatio:	
	opt	stack 3
; Regs used in _ReadCtRatio: [wreg+status,2+status,0+btemp+1+pclath+cstack]
	line	442
	
l8185:	
;main.c: 441: unsigned int Tp;
;main.c: 442: ct_ratio_read = (eeprom_read(0x00)*256)+eeprom_read(0x01);
	movlw	(01h)
	fcall	_eeprom_read
	bcf	status, 6	;RP1=0, select bank0
	movwf	(??_ReadCtRatio+0)+0
	movlw	(0)
	fcall	_eeprom_read
	bcf	status, 6	;RP1=0, select bank0
	movwf	(??_ReadCtRatio+1)+0+0
	clrf	(??_ReadCtRatio+1)+0+1
	movf	(??_ReadCtRatio+1)+0,w
	movwf	(??_ReadCtRatio+1)+1
	clrf	(??_ReadCtRatio+1)+0
	movf	0+(??_ReadCtRatio+0)+0,w
	addwf	0+(??_ReadCtRatio+1)+0,w
	movwf	(_ct_ratio_read)
	movlw	0
	skipnc
	movlw	1
	addwf	1+(??_ReadCtRatio+1)+0,w
	movwf	1+(_ct_ratio_read)
	clrf	(_ct_ratio_read)+2
	btfsc	(_ct_ratio_read)+1,7
	decf	2+(_ct_ratio_read),f
	movf	(_ct_ratio_read)+2,w
	movwf	3+(_ct_ratio_read)
	line	443
	
l8187:	
;main.c: 443: if(ct_ratio_read<=0 || ct_ratio_read>9999)
	movf	(_ct_ratio_read+3),w
	xorlw	80h
	movwf	btemp+1
	movlw	0
	xorlw	80h
	subwf	btemp+1,w
	
	skipz
	goto	u3413
	movlw	0
	subwf	(_ct_ratio_read+2),w
	skipz
	goto	u3413
	movlw	0
	subwf	(_ct_ratio_read+1),w
	skipz
	goto	u3413
	movlw	01h
	subwf	(_ct_ratio_read),w
u3413:
	skipc
	goto	u3411
	goto	u3410
u3411:
	goto	l8191
u3410:
	
l8189:	
	movf	(_ct_ratio_read+3),w
	xorlw	80h
	movwf	btemp+1
	movlw	0
	xorlw	80h
	subwf	btemp+1,w
	
	skipz
	goto	u3423
	movlw	0
	subwf	(_ct_ratio_read+2),w
	skipz
	goto	u3423
	movlw	027h
	subwf	(_ct_ratio_read+1),w
	skipz
	goto	u3423
	movlw	010h
	subwf	(_ct_ratio_read),w
u3423:
	skipc
	goto	u3421
	goto	u3420
u3421:
	goto	l8193
u3420:
	line	444
	
l8191:	
;main.c: 444: ct_ratio_read = 1;
	clrf	(_ct_ratio_read)
	incf	(_ct_ratio_read),f
	clrf	(_ct_ratio_read+1)
	clrf	(_ct_ratio_read+2)
	clrf	(_ct_ratio_read+3)
	line	445
	
l8193:	
;main.c: 445: Tp = (eeprom_read(0x02)*256)+eeprom_read(0x03);
	movlw	(03h)
	fcall	_eeprom_read
	bcf	status, 6	;RP1=0, select bank0
	movwf	(??_ReadCtRatio+0)+0
	movlw	(02h)
	fcall	_eeprom_read
	bcf	status, 6	;RP1=0, select bank0
	movwf	(ReadCtRatio@Tp+1)
	movf	0+(??_ReadCtRatio+0)+0,w
	movwf	(ReadCtRatio@Tp)
	line	446
	
l8195:	
;main.c: 446: if(Tp<=0 || Tp>=2000)
	movf	(ReadCtRatio@Tp+1),w
	iorwf	(ReadCtRatio@Tp),w
	skipnz
	goto	u3431
	goto	u3430
u3431:
	goto	l8199
u3430:
	
l8197:	
	movlw	high(07D0h)
	subwf	(ReadCtRatio@Tp+1),w
	movlw	low(07D0h)
	skipnz
	subwf	(ReadCtRatio@Tp),w
	skipc
	goto	u3441
	goto	u3440
u3441:
	goto	l8201
u3440:
	line	447
	
l8199:	
;main.c: 447: Tp = 1000;
	movlw	low(03E8h)
	movwf	(ReadCtRatio@Tp)
	movlw	high(03E8h)
	movwf	((ReadCtRatio@Tp))+1
	line	448
	
l8201:	
;main.c: 448: CurrentCal = Tp;
	movf	(ReadCtRatio@Tp+1),w
	movwf	(?___lwtoft+1)
	movf	(ReadCtRatio@Tp),w
	movwf	(?___lwtoft)
	fcall	___lwtoft
	movf	(0+(?___lwtoft)),w
	movwf	(_CurrentCal)
	movf	(1+(?___lwtoft)),w
	movwf	(_CurrentCal+1)
	movf	(2+(?___lwtoft)),w
	movwf	(_CurrentCal+2)
	line	449
	
l8203:	
;main.c: 449: CurrentCal = CurrentCal/1000;
	movlw	0x0
	movwf	(?___ftdiv)
	movlw	0x7a
	movwf	(?___ftdiv+1)
	movlw	0x44
	movwf	(?___ftdiv+2)
	movf	(_CurrentCal),w
	movwf	0+(?___ftdiv)+03h
	movf	(_CurrentCal+1),w
	movwf	1+(?___ftdiv)+03h
	movf	(_CurrentCal+2),w
	movwf	2+(?___ftdiv)+03h
	fcall	___ftdiv
	movf	(0+(?___ftdiv)),w
	movwf	(_CurrentCal)
	movf	(1+(?___ftdiv)),w
	movwf	(_CurrentCal+1)
	movf	(2+(?___ftdiv)),w
	movwf	(_CurrentCal+2)
	line	451
	
l8205:	
;main.c: 451: ZeroAdc = (eeprom_read(0x04)*256)+eeprom_read(0x05);
	movlw	(05h)
	fcall	_eeprom_read
	bcf	status, 6	;RP1=0, select bank0
	movwf	(??_ReadCtRatio+0)+0
	movlw	(04h)
	fcall	_eeprom_read
	movwf	(_ZeroAdc+1)
	bcf	status, 6	;RP1=0, select bank0
	movf	0+(??_ReadCtRatio+0)+0,w
	movwf	(_ZeroAdc)
	line	452
	
l8207:	
;main.c: 452: if(ZeroAdc<=300 || ZeroAdc>=800)
	movlw	high(012Dh)
	subwf	(_ZeroAdc+1),w
	movlw	low(012Dh)
	skipnz
	subwf	(_ZeroAdc),w
	skipc
	goto	u3451
	goto	u3450
u3451:
	goto	l8211
u3450:
	
l8209:	
	movlw	high(0320h)
	subwf	(_ZeroAdc+1),w
	movlw	low(0320h)
	skipnz
	subwf	(_ZeroAdc),w
	skipc
	goto	u3461
	goto	u3460
u3461:
	goto	l1689
u3460:
	line	453
	
l8211:	
;main.c: 453: ZeroAdc = 512;
	movlw	low(0200h)
	movwf	(_ZeroAdc)
	movlw	high(0200h)
	movwf	((_ZeroAdc))+1
	line	454
	
l1689:	
	return
	opt stack 0
GLOBAL	__end_of_ReadCtRatio
	__end_of_ReadCtRatio:
	signat	_ReadCtRatio,88
	global	_decimal_bcd

;; *************** function _decimal_bcd *****************
;; Defined at:
;;		line 667 in file "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
;; Parameters:    Size  Location     Type
;;  value           2    7[BANK0 ] unsigned int 
;; Auto vars:     Size  Location     Type
;;  result4         2   15[BANK0 ] unsigned int 
;;  result3         2   13[BANK0 ] unsigned int 
;;  result2         2   11[BANK0 ] unsigned int 
;;  result1         2    9[BANK0 ] unsigned int 
;; Return value:  Size  Location     Type
;;		None               void
;; Registers used:
;;		wreg, fsr0l, fsr0h, status,2, status,0, pclath, cstack
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 160/20
;;		Unchanged: FFE9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       2       0       0
;;      Locals:         0       8       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0      10       0       0
;;Total ram usage:       10 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    2
;; This function calls:
;;		___lwdiv
;;		___lwmod
;; This function is called by:
;;		_main
;;		_set_ct_ratio
;; This function uses a non-reentrant model
;;
psect	text723,local,class=CODE,delta=2,merge=1
global __ptext723
__ptext723:	;psect for function _decimal_bcd
psect	text723
	file	"E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
	line	667
	global	__size_of_decimal_bcd
	__size_of_decimal_bcd	equ	__end_of_decimal_bcd-_decimal_bcd
	
_decimal_bcd:	
	opt	stack 4
; Regs used in _decimal_bcd: [wreg-fsr0h+status,2+status,0+pclath+cstack]
	line	669
	
l8367:	
;main.c: 668: unsigned int result1,result2,result3,result4;
;main.c: 669: result1 = value/1000;
	movlw	low(03E8h)
	movwf	(?___lwdiv)
	movlw	high(03E8h)
	movwf	((?___lwdiv))+1
	movf	(decimal_bcd@value+1),w
	movwf	1+(?___lwdiv)+02h
	movf	(decimal_bcd@value),w
	movwf	0+(?___lwdiv)+02h
	fcall	___lwdiv
	movf	(1+(?___lwdiv)),w
	movwf	(decimal_bcd@result1+1)
	movf	(0+(?___lwdiv)),w
	movwf	(decimal_bcd@result1)
	line	670
;main.c: 670: value = value%1000;
	movlw	low(03E8h)
	movwf	(?___lwmod)
	movlw	high(03E8h)
	movwf	((?___lwmod))+1
	movf	(decimal_bcd@value+1),w
	movwf	1+(?___lwmod)+02h
	movf	(decimal_bcd@value),w
	movwf	0+(?___lwmod)+02h
	fcall	___lwmod
	movf	(1+(?___lwmod)),w
	movwf	(decimal_bcd@value+1)
	movf	(0+(?___lwmod)),w
	movwf	(decimal_bcd@value)
	line	671
;main.c: 671: result2 = value/100;
	movlw	064h
	movwf	(?___lwdiv)
	clrf	(?___lwdiv+1)
	movf	(decimal_bcd@value+1),w
	movwf	1+(?___lwdiv)+02h
	movf	(decimal_bcd@value),w
	movwf	0+(?___lwdiv)+02h
	fcall	___lwdiv
	movf	(1+(?___lwdiv)),w
	movwf	(decimal_bcd@result2+1)
	movf	(0+(?___lwdiv)),w
	movwf	(decimal_bcd@result2)
	line	672
;main.c: 672: value = value%100;
	movlw	064h
	movwf	(?___lwmod)
	clrf	(?___lwmod+1)
	movf	(decimal_bcd@value+1),w
	movwf	1+(?___lwmod)+02h
	movf	(decimal_bcd@value),w
	movwf	0+(?___lwmod)+02h
	fcall	___lwmod
	movf	(1+(?___lwmod)),w
	movwf	(decimal_bcd@value+1)
	movf	(0+(?___lwmod)),w
	movwf	(decimal_bcd@value)
	line	673
;main.c: 673: result3 = value/10;
	movlw	0Ah
	movwf	(?___lwdiv)
	clrf	(?___lwdiv+1)
	movf	(decimal_bcd@value+1),w
	movwf	1+(?___lwdiv)+02h
	movf	(decimal_bcd@value),w
	movwf	0+(?___lwdiv)+02h
	fcall	___lwdiv
	movf	(1+(?___lwdiv)),w
	movwf	(decimal_bcd@result3+1)
	movf	(0+(?___lwdiv)),w
	movwf	(decimal_bcd@result3)
	line	674
;main.c: 674: value = value%10;
	movlw	0Ah
	movwf	(?___lwmod)
	clrf	(?___lwmod+1)
	movf	(decimal_bcd@value+1),w
	movwf	1+(?___lwmod)+02h
	movf	(decimal_bcd@value),w
	movwf	0+(?___lwmod)+02h
	fcall	___lwmod
	movf	(1+(?___lwmod)),w
	movwf	(decimal_bcd@value+1)
	movf	(0+(?___lwmod)),w
	movwf	(decimal_bcd@value)
	line	675
	
l8369:	
;main.c: 675: result4 = value;
	movf	(decimal_bcd@value+1),w
	movwf	(decimal_bcd@result4+1)
	movf	(decimal_bcd@value),w
	movwf	(decimal_bcd@result4)
	line	676
	
l8371:	
;main.c: 676: disp_buff[0] = bcd[result1];
	movf	(decimal_bcd@result1),w
	addlw	_bcd&0ffh
	movwf	fsr0
	bcf	status, 7	;select IRP bank1
	movf	indf,w
	bsf	status, 5	;RP0=1, select bank1
	movwf	(_disp_buff)^080h
	line	677
	
l8373:	
;main.c: 677: disp_buff[1] = bcd[result2];
	bcf	status, 5	;RP0=0, select bank0
	movf	(decimal_bcd@result2),w
	addlw	_bcd&0ffh
	movwf	fsr0
	movf	indf,w
	bsf	status, 5	;RP0=1, select bank1
	movwf	0+(_disp_buff)^080h+01h
	line	678
	
l8375:	
;main.c: 678: disp_buff[2] = bcd[result3];
	bcf	status, 5	;RP0=0, select bank0
	movf	(decimal_bcd@result3),w
	addlw	_bcd&0ffh
	movwf	fsr0
	movf	indf,w
	bsf	status, 5	;RP0=1, select bank1
	movwf	0+(_disp_buff)^080h+02h
	line	679
	
l8377:	
;main.c: 679: disp_buff[3] = bcd[result4];
	bcf	status, 5	;RP0=0, select bank0
	movf	(decimal_bcd@result4),w
	addlw	_bcd&0ffh
	movwf	fsr0
	movf	indf,w
	bsf	status, 5	;RP0=1, select bank1
	movwf	0+(_disp_buff)^080h+03h
	line	680
	
l1752:	
	return
	opt stack 0
GLOBAL	__end_of_decimal_bcd
	__end_of_decimal_bcd:
	signat	_decimal_bcd,4216
	global	_eeprom_write

;; *************** function _eeprom_write *****************
;; Defined at:
;;		line 7 in file "eewrite.c"
;; Parameters:    Size  Location     Type
;;  addr            1    wreg     unsigned char 
;;  value           1    0[BANK0 ] unsigned char 
;; Auto vars:     Size  Location     Type
;;  addr            1    1[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;		None               void
;; Registers used:
;;		wreg, status,2, status,0
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/60
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       1       0       0
;;      Locals:         0       1       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0       2       0       0
;;Total ram usage:        2 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		_main
;;		_set_ct_ratio
;; This function uses a non-reentrant model
;;
psect	text724,local,class=CODE,delta=2,merge=1
global __ptext724
__ptext724:	;psect for function _eeprom_write
psect	text724
	file	"eewrite.c"
	line	7
	global	__size_of_eeprom_write
	__size_of_eeprom_write	equ	__end_of_eeprom_write-_eeprom_write
	
_eeprom_write:	
	opt	stack 5
; Regs used in _eeprom_write: [wreg+status,2+status,0]
;eeprom_write@addr stored from wreg
	movwf	(eeprom_write@addr)
	line	8
	
l3284:	
	
l3285:	
	bsf	status, 5	;RP0=1, select bank3
	bsf	status, 6	;RP1=1, select bank3
	btfsc	(3169/8)^0180h,(3169)&7	;volatile
	goto	u3781
	goto	u3780
u3781:
	goto	l3285
u3780:
	
l8379:	
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	movf	(eeprom_write@addr),w
	bsf	status, 6	;RP1=1, select bank2
	movwf	(269)^0100h	;volatile
	bcf	status, 6	;RP1=0, select bank0
	movf	(eeprom_write@value),w
	bsf	status, 6	;RP1=1, select bank2
	movwf	(268)^0100h	;volatile
	
l8381:	
	movlw	(03Fh)
	bsf	status, 5	;RP0=1, select bank3
	andwf	(396)^0180h,f	;volatile
	
l8383:	
	bcf	(24/8),(24)&7	;volatile
	
l8385:	
	btfss	(95/8),(95)&7	;volatile
	goto	u3791
	goto	u3790
u3791:
	goto	l3288
u3790:
	
l8387:	
	bsf	(24/8),(24)&7	;volatile
	
l3288:	
	bcf	(95/8),(95)&7	;volatile
	bsf	(3170/8)^0180h,(3170)&7	;volatile
	
l8389:	
	movlw	(055h)
	movwf	(397)^0180h	;volatile
	movlw	(0AAh)
	movwf	(397)^0180h	;volatile
	
l8391:	
	bsf	(3169/8)^0180h,(3169)&7	;volatile
	
l8393:	
	bcf	(3170/8)^0180h,(3170)&7	;volatile
	
l8395:	
	btfss	(24/8),(24)&7	;volatile
	goto	u3801
	goto	u3800
u3801:
	goto	l3291
u3800:
	
l8397:	
	bsf	(95/8),(95)&7	;volatile
	line	9
	
l3291:	
	return
	opt stack 0
GLOBAL	__end_of_eeprom_write
	__end_of_eeprom_write:
	signat	_eeprom_write,8312
	global	_eeprom_read

;; *************** function _eeprom_read *****************
;; Defined at:
;;		line 7 in file "eeread.c"
;; Parameters:    Size  Location     Type
;;  addr            1    wreg     unsigned char 
;; Auto vars:     Size  Location     Type
;;  addr            1    0[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;                  1    wreg      unsigned char 
;; Registers used:
;;		wreg, status,2, status,0
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/40
;;		Unchanged: FFE00/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       0       0       0
;;      Locals:         0       1       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0       1       0       0
;;Total ram usage:        1 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		_ReadCtRatio
;; This function uses a non-reentrant model
;;
psect	text725,local,class=CODE,delta=2,merge=1
global __ptext725
__ptext725:	;psect for function _eeprom_read
psect	text725
	file	"eeread.c"
	line	7
	global	__size_of_eeprom_read
	__size_of_eeprom_read	equ	__end_of_eeprom_read-_eeprom_read
	
_eeprom_read:	
	opt	stack 4
; Regs used in _eeprom_read: [wreg+status,2+status,0]
;eeprom_read@addr stored from wreg
	line	9
	movwf	(eeprom_read@addr)
	line	8
	
l2517:	
	line	9
# 9 "eeread.c"
clrwdt ;# 
psect	text725
	line	10
	bsf	status, 5	;RP0=1, select bank3
	bsf	status, 6	;RP1=1, select bank3
	btfsc	(3169/8)^0180h,(3169)&7	;volatile
	goto	u3871
	goto	u3870
u3871:
	goto	l2517
u3870:
	line	11
	
l8453:	
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	movf	(eeprom_read@addr),w
	bsf	status, 6	;RP1=1, select bank2
	movwf	(269)^0100h	;volatile
	movlw	(03Fh)
	bsf	status, 5	;RP0=1, select bank3
	andwf	(396)^0180h,f	;volatile
	bsf	(3168/8)^0180h,(3168)&7	;volatile
	clrc
	btfsc	(3168/8)^0180h,(3168)&7	;volatile
	setc
	movlw	0
	skipnc
	movlw	1

	bcf	status, 5	;RP0=0, select bank2
	movf	(268)^0100h,w	;volatile
	line	12
	
l2519:	
	return
	opt stack 0
GLOBAL	__end_of_eeprom_read
	__end_of_eeprom_read:
	signat	_eeprom_read,4217
	global	_get_adc

;; *************** function _get_adc *****************
;; Defined at:
;;		line 651 in file "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
;; Parameters:    Size  Location     Type
;;  channel         1    wreg     unsigned char 
;; Auto vars:     Size  Location     Type
;;  channel         1    0[COMMON] unsigned char 
;;  adc_value       2    4[BANK0 ] unsigned int 
;;  Tp              2    2[BANK0 ] int 
;; Return value:  Size  Location     Type
;;                  2    0[BANK0 ] int 
;; Registers used:
;;		wreg
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFE00/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       2       0       0
;;      Locals:         0       4       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0       6       0       0
;;Total ram usage:        6 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		_voltage_adc
;; This function uses a non-reentrant model
;;
psect	text726,local,class=CODE,delta=2,merge=1
global __ptext726
__ptext726:	;psect for function _get_adc
psect	text726
	file	"E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
	line	651
	global	__size_of_get_adc
	__size_of_get_adc	equ	__end_of_get_adc-_get_adc
	
_get_adc:	
	opt	stack 5
; Regs used in _get_adc: [wreg]
	line	654
	
l8457:	
;main.c: 652: int Tp;
;main.c: 653: unsigned int adc_value;
;main.c: 654: { delayus_variable=(unsigned char)(20/2); asm("nop"); } asm("decfsz _delayus_variable,f"); asm("goto $ - 2");;
	movlw	(0Ah)
	movwf	(_delayus_variable)
# 654 "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
nop ;# 
# 654 "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
decfsz _delayus_variable,f ;# 
# 654 "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
goto $ - 2 ;# 
psect	text726
	line	655
;main.c: 655: while(GO_DONE == 1) continue;
	
l1743:	
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	btfsc	(249/8),(249)&7	;volatile
	goto	u3881
	goto	u3880
u3881:
	goto	l1743
u3880:
	
l1745:	
	line	656
;main.c: 656: GO_DONE = 1;
	bsf	(249/8),(249)&7	;volatile
	line	657
;main.c: 657: while(GO_DONE == 1) continue;
	
l1746:	
	btfsc	(249/8),(249)&7	;volatile
	goto	u3891
	goto	u3890
u3891:
	goto	l1746
u3890:
	line	658
	
l8459:	
;main.c: 658: adc_value = (ADRESH*256)+ADRESL;
	movf	(30),w	;volatile
	movwf	(get_adc@adc_value+1)
	clrf	(get_adc@adc_value)
	bsf	status, 5	;RP0=1, select bank1
	movf	(158)^080h,w	;volatile
	bcf	status, 5	;RP0=0, select bank0
	addwf	(get_adc@adc_value),f
	skipnc
	incf	(get_adc@adc_value+1),f
	line	659
;main.c: 659: Tp = adc_value;
	movf	(get_adc@adc_value+1),w
	movwf	(get_adc@Tp+1)
	movf	(get_adc@adc_value),w
	movwf	(get_adc@Tp)
	line	660
;main.c: 660: Tp = Tp-ZeroAdc;
	movf	(_ZeroAdc),w
	subwf	(get_adc@Tp),f
	movf	(_ZeroAdc+1),w
	skipc
	decf	(get_adc@Tp+1),f
	subwf	(get_adc@Tp+1),f
	line	661
;main.c: 661: return (Tp);
	movf	(get_adc@Tp+1),w
	movwf	(?_get_adc+1)
	movf	(get_adc@Tp),w
	movwf	(?_get_adc)
	line	662
	
l1749:	
	return
	opt stack 0
GLOBAL	__end_of_get_adc
	__end_of_get_adc:
	signat	_get_adc,4218
	global	_abs

;; *************** function _abs *****************
;; Defined at:
;;		line 5 in file "C:\Program Files\Microchip\xc8\v1.10\sources\abs.c"
;; Parameters:    Size  Location     Type
;;  a               2    0[BANK0 ] int 
;; Auto vars:     Size  Location     Type
;;		None
;; Return value:  Size  Location     Type
;;                  2    0[BANK0 ] int 
;; Registers used:
;;		wreg, status,2, status,0
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       2       0       0
;;      Locals:         0       0       0       0
;;      Temps:          0       2       0       0
;;      Totals:         0       4       0       0
;;Total ram usage:        4 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		_voltage_adc
;; This function uses a non-reentrant model
;;
psect	text727,local,class=CODE,delta=2,merge=1
global __ptext727
__ptext727:	;psect for function _abs
psect	text727
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\abs.c"
	line	5
	global	__size_of_abs
	__size_of_abs	equ	__end_of_abs-_abs
	
_abs:	
	opt	stack 5
; Regs used in _abs: [wreg+status,2+status,0]
	line	6
	
l8463:	
	btfss	(abs@a+1),7
	goto	u3901
	goto	u3900
u3901:
	goto	l4118
u3900:
	line	7
	
l8465:	
	comf	(abs@a),w
	movwf	(??_abs+0)+0
	comf	(abs@a+1),w
	movwf	((??_abs+0)+0+1)
	incf	(??_abs+0)+0,f
	skipnz
	incf	((??_abs+0)+0+1),f
	movf	0+(??_abs+0)+0,w
	movwf	(?_abs)
	movf	1+(??_abs+0)+0,w
	movwf	(?_abs+1)
	goto	l4119
	
l4118:	
	line	8
	line	9
	
l4119:	
	return
	opt stack 0
GLOBAL	__end_of_abs
	__end_of_abs:
	signat	_abs,4218
	global	_sqrt

;; *************** function _sqrt *****************
;; Defined at:
;;		line 14 in file "C:\Program Files\Microchip\xc8\v1.10\sources\sqrt.c"
;; Parameters:    Size  Location     Type
;;  y               3   32[BANK0 ] int 
;; Auto vars:     Size  Location     Type
;;  x               3   45[BANK0 ] int 
;;  q               3   42[BANK0 ] int 
;;  z               3   38[BANK0 ] int 
;;  og              3    0        int 
;;  i               1   41[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;                  3   32[BANK0 ] unsigned char 
;; Registers used:
;;		wreg, status,2, status,0, pclath, cstack
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       3       0       0
;;      Locals:         0      10       0       0
;;      Temps:          0       3       0       0
;;      Totals:         0      16       0       0
;;Total ram usage:       16 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    4
;; This function calls:
;;		___ftge
;;		___ftmul
;;		___ftsub
;; This function is called by:
;;		_voltage_adc
;; This function uses a non-reentrant model
;;
psect	text728,local,class=CODE,delta=2,merge=1
global __ptext728
__ptext728:	;psect for function _sqrt
psect	text728
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\sqrt.c"
	line	14
	global	__size_of_sqrt
	__size_of_sqrt	equ	__end_of_sqrt-_sqrt
	
_sqrt:	
	opt	stack 2
; Regs used in _sqrt: [wreg+status,2+status,0+pclath+cstack]
	line	19
	
l8469:	
	clrf	(?___ftge)
	clrf	(?___ftge+1)
	clrf	(?___ftge+2)
	movf	(sqrt@y),w
	movwf	0+(?___ftge)+03h
	movf	(sqrt@y+1),w
	movwf	1+(?___ftge)+03h
	movf	(sqrt@y+2),w
	movwf	2+(?___ftge)+03h
	fcall	___ftge
	btfss	status,0
	goto	u3911
	goto	u3910
u3911:
	goto	l8477
u3910:
	line	20
	
l8471:	
	movf	(sqrt@y),w
	movwf	(?___ftge)
	movf	(sqrt@y+1),w
	movwf	(?___ftge+1)
	movf	(sqrt@y+2),w
	movwf	(?___ftge+2)
	clrf	0+(?___ftge)+03h
	clrf	1+(?___ftge)+03h
	clrf	2+(?___ftge)+03h
	fcall	___ftge
	line	22
	
l8473:	
	clrf	(?_sqrt)
	clrf	(?_sqrt+1)
	clrf	(?_sqrt+2)
	goto	l4126
	line	24
	
l8477:	
	movf	(sqrt@y),w
	movwf	(sqrt@z)
	movf	(sqrt@y+1),w
	movwf	(sqrt@z+1)
	movf	(sqrt@y+2),w
	movwf	(sqrt@z+2)
	line	30
	movlw	0C8h
	movwf	(sqrt@x)
	movlw	06Eh
	movwf	(sqrt@x+1)
	movlw	0BEh
	movwf	(sqrt@x+2)
	movf	(sqrt@y),w
	subwf	(sqrt@x),f
	movf	(sqrt@y+1),w
	skipc
	incfsz	(sqrt@y+1),w
	subwf	(sqrt@x+1),f
	movf	(sqrt@y+2),w
	skipc
	incf	(sqrt@y+2),w
	subwf	(sqrt@x+2),f
	line	31
	
l8479:	
	clrc
	rrf	(sqrt@x+2),f
	rrf	(sqrt@x+1),f
	rrf	(sqrt@x),f
	line	32
	
l8481:	
	movlw	0
	movwf	((??_sqrt+0)+0)
	movlw	080h
	movwf	((??_sqrt+0)+0+1)
	movlw	0
	movwf	((??_sqrt+0)+0+2)
	movf	0+(??_sqrt+0)+0,w
	subwf	(sqrt@z),f
	movf	1+(??_sqrt+0)+0,w
	skipc
	incfsz	1+(??_sqrt+0)+0,w
	goto	u3925
	goto	u3926
u3925:
	subwf	(sqrt@z+1),f
u3926:
	movf	2+(??_sqrt+0)+0,w
	skipc
	incf	2+(??_sqrt+0)+0,w
	goto	u3927
	goto	u3928
u3927:
	subwf	(sqrt@z+2),f
u3928:

	line	34
	
l8483:	
	movlw	(04h)
	movwf	(sqrt@i)
	line	37
	
l8485:	
	movf	(sqrt@z),w
	movwf	(?___ftmul)
	movf	(sqrt@z+1),w
	movwf	(?___ftmul+1)
	movf	(sqrt@z+2),w
	movwf	(?___ftmul+2)
	movf	(sqrt@x),w
	movwf	0+(?___ftmul)+03h
	movf	(sqrt@x+1),w
	movwf	1+(?___ftmul)+03h
	movf	(sqrt@x+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	movwf	(sqrt@q)
	movf	(1+(?___ftmul)),w
	movwf	(sqrt@q+1)
	movf	(2+(?___ftmul)),w
	movwf	(sqrt@q+2)
	line	38
	
l8487:	
	movf	(sqrt@x),w
	movwf	(?___ftmul)
	movf	(sqrt@x+1),w
	movwf	(?___ftmul+1)
	movf	(sqrt@x+2),w
	movwf	(?___ftmul+2)
	movf	(sqrt@q),w
	movwf	0+(?___ftmul)+03h
	movf	(sqrt@q+1),w
	movwf	1+(?___ftmul)+03h
	movf	(sqrt@q+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	movwf	(sqrt@q)
	movf	(1+(?___ftmul)),w
	movwf	(sqrt@q+1)
	movf	(2+(?___ftmul)),w
	movwf	(sqrt@q+2)
	line	39
	
l8489:	
	movf	(sqrt@x),w
	movwf	(?___ftmul)
	movf	(sqrt@x+1),w
	movwf	(?___ftmul+1)
	movf	(sqrt@x+2),w
	movwf	(?___ftmul+2)
	movf	(sqrt@q),w
	movwf	0+(?___ftmul)+03h
	movf	(sqrt@q+1),w
	movwf	1+(?___ftmul)+03h
	movf	(sqrt@q+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	movwf	(sqrt@q)
	movf	(1+(?___ftmul)),w
	movwf	(sqrt@q+1)
	movf	(2+(?___ftmul)),w
	movwf	(sqrt@q+2)
	line	40
	
l8491:	
	movlw	0x0
	movwf	(?___ftmul)
	movlw	0xc0
	movwf	(?___ftmul+1)
	movlw	0x3f
	movwf	(?___ftmul+2)
	movf	(sqrt@x),w
	movwf	0+(?___ftmul)+03h
	movf	(sqrt@x+1),w
	movwf	1+(?___ftmul)+03h
	movf	(sqrt@x+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	movwf	(sqrt@x)
	movf	(1+(?___ftmul)),w
	movwf	(sqrt@x+1)
	movf	(2+(?___ftmul)),w
	movwf	(sqrt@x+2)
	line	41
	
l8493:	
	movf	(sqrt@q),w
	movwf	(?___ftsub)
	movf	(sqrt@q+1),w
	movwf	(?___ftsub+1)
	movf	(sqrt@q+2),w
	movwf	(?___ftsub+2)
	movf	(sqrt@x),w
	movwf	0+(?___ftsub)+03h
	movf	(sqrt@x+1),w
	movwf	1+(?___ftsub)+03h
	movf	(sqrt@x+2),w
	movwf	2+(?___ftsub)+03h
	fcall	___ftsub
	movf	(0+(?___ftsub)),w
	movwf	(sqrt@x)
	movf	(1+(?___ftsub)),w
	movwf	(sqrt@x+1)
	movf	(2+(?___ftsub)),w
	movwf	(sqrt@x+2)
	line	42
	
l8495:	
	decfsz	(sqrt@i),f
	goto	u3931
	goto	u3930
u3931:
	goto	l8485
u3930:
	line	43
	
l8497:	
	movf	(sqrt@y),w
	movwf	(?___ftmul)
	movf	(sqrt@y+1),w
	movwf	(?___ftmul+1)
	movf	(sqrt@y+2),w
	movwf	(?___ftmul+2)
	movf	(sqrt@x),w
	movwf	0+(?___ftmul)+03h
	movf	(sqrt@x+1),w
	movwf	1+(?___ftmul)+03h
	movf	(sqrt@x+2),w
	movwf	2+(?___ftmul)+03h
	fcall	___ftmul
	movf	(0+(?___ftmul)),w
	movwf	(?_sqrt)
	movf	(1+(?___ftmul)),w
	movwf	(?_sqrt+1)
	movf	(2+(?___ftmul)),w
	movwf	(?_sqrt+2)
	line	44
	
l4126:	
	return
	opt stack 0
GLOBAL	__end_of_sqrt
	__end_of_sqrt:
	signat	_sqrt,4219
	global	___lwdiv

;; *************** function ___lwdiv *****************
;; Defined at:
;;		line 5 in file "C:\Program Files\Microchip\xc8\v1.10\sources\lwdiv.c"
;; Parameters:    Size  Location     Type
;;  divisor         2    0[BANK0 ] unsigned int 
;;  dividend        2    2[BANK0 ] unsigned int 
;; Auto vars:     Size  Location     Type
;;  quotient        2    5[BANK0 ] unsigned int 
;;  counter         1    4[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;                  2    0[BANK0 ] unsigned int 
;; Registers used:
;;		wreg, status,2, status,0
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       4       0       0
;;      Locals:         0       3       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0       7       0       0
;;Total ram usage:        7 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		_decimal_bcd
;; This function uses a non-reentrant model
;;
psect	text729,local,class=CODE,delta=2,merge=1
global __ptext729
__ptext729:	;psect for function ___lwdiv
psect	text729
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\lwdiv.c"
	line	5
	global	__size_of___lwdiv
	__size_of___lwdiv	equ	__end_of___lwdiv-___lwdiv
	
___lwdiv:	
	opt	stack 4
; Regs used in ___lwdiv: [wreg+status,2+status,0]
	line	9
	
l8501:	
	clrf	(___lwdiv@quotient)
	clrf	(___lwdiv@quotient+1)
	line	10
	
l8503:	
	movf	(___lwdiv@divisor+1),w
	iorwf	(___lwdiv@divisor),w
	skipnz
	goto	u3941
	goto	u3940
u3941:
	goto	l8523
u3940:
	line	11
	
l8505:	
	clrf	(___lwdiv@counter)
	incf	(___lwdiv@counter),f
	line	12
	goto	l8509
	line	13
	
l8507:	
	clrc
	rlf	(___lwdiv@divisor),f
	rlf	(___lwdiv@divisor+1),f
	line	14
	incf	(___lwdiv@counter),f
	line	12
	
l8509:	
	btfss	(___lwdiv@divisor+1),(15)&7
	goto	u3951
	goto	u3950
u3951:
	goto	l8507
u3950:
	line	17
	
l8511:	
	clrc
	rlf	(___lwdiv@quotient),f
	rlf	(___lwdiv@quotient+1),f
	line	18
	
l8513:	
	movf	(___lwdiv@divisor+1),w
	subwf	(___lwdiv@dividend+1),w
	skipz
	goto	u3965
	movf	(___lwdiv@divisor),w
	subwf	(___lwdiv@dividend),w
u3965:
	skipc
	goto	u3961
	goto	u3960
u3961:
	goto	l8519
u3960:
	line	19
	
l8515:	
	movf	(___lwdiv@divisor),w
	subwf	(___lwdiv@dividend),f
	movf	(___lwdiv@divisor+1),w
	skipc
	decf	(___lwdiv@dividend+1),f
	subwf	(___lwdiv@dividend+1),f
	line	20
	
l8517:	
	bsf	(___lwdiv@quotient)+(0/8),(0)&7
	line	22
	
l8519:	
	clrc
	rrf	(___lwdiv@divisor+1),f
	rrf	(___lwdiv@divisor),f
	line	23
	
l8521:	
	decfsz	(___lwdiv@counter),f
	goto	u3971
	goto	u3970
u3971:
	goto	l8511
u3970:
	line	25
	
l8523:	
	movf	(___lwdiv@quotient+1),w
	movwf	(?___lwdiv+1)
	movf	(___lwdiv@quotient),w
	movwf	(?___lwdiv)
	line	26
	
l4152:	
	return
	opt stack 0
GLOBAL	__end_of___lwdiv
	__end_of___lwdiv:
	signat	___lwdiv,8314
	global	___lwmod

;; *************** function ___lwmod *****************
;; Defined at:
;;		line 5 in file "C:\Program Files\Microchip\xc8\v1.10\sources\lwmod.c"
;; Parameters:    Size  Location     Type
;;  divisor         2    0[BANK0 ] unsigned int 
;;  dividend        2    2[BANK0 ] unsigned int 
;; Auto vars:     Size  Location     Type
;;  counter         1    4[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;                  2    0[BANK0 ] unsigned int 
;; Registers used:
;;		wreg, status,2, status,0
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       4       0       0
;;      Locals:         0       1       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0       5       0       0
;;Total ram usage:        5 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		_decimal_bcd
;; This function uses a non-reentrant model
;;
psect	text730,local,class=CODE,delta=2,merge=1
global __ptext730
__ptext730:	;psect for function ___lwmod
psect	text730
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\lwmod.c"
	line	5
	global	__size_of___lwmod
	__size_of___lwmod	equ	__end_of___lwmod-___lwmod
	
___lwmod:	
	opt	stack 4
; Regs used in ___lwmod: [wreg+status,2+status,0]
	line	8
	
l8527:	
	movf	(___lwmod@divisor+1),w
	iorwf	(___lwmod@divisor),w
	skipnz
	goto	u3981
	goto	u3980
u3981:
	goto	l8543
u3980:
	line	9
	
l8529:	
	clrf	(___lwmod@counter)
	incf	(___lwmod@counter),f
	line	10
	goto	l8533
	line	11
	
l8531:	
	clrc
	rlf	(___lwmod@divisor),f
	rlf	(___lwmod@divisor+1),f
	line	12
	incf	(___lwmod@counter),f
	line	10
	
l8533:	
	btfss	(___lwmod@divisor+1),(15)&7
	goto	u3991
	goto	u3990
u3991:
	goto	l8531
u3990:
	line	15
	
l8535:	
	movf	(___lwmod@divisor+1),w
	subwf	(___lwmod@dividend+1),w
	skipz
	goto	u4005
	movf	(___lwmod@divisor),w
	subwf	(___lwmod@dividend),w
u4005:
	skipc
	goto	u4001
	goto	u4000
u4001:
	goto	l8539
u4000:
	line	16
	
l8537:	
	movf	(___lwmod@divisor),w
	subwf	(___lwmod@dividend),f
	movf	(___lwmod@divisor+1),w
	skipc
	decf	(___lwmod@dividend+1),f
	subwf	(___lwmod@dividend+1),f
	line	17
	
l8539:	
	clrc
	rrf	(___lwmod@divisor+1),f
	rrf	(___lwmod@divisor),f
	line	18
	
l8541:	
	decfsz	(___lwmod@counter),f
	goto	u4011
	goto	u4010
u4011:
	goto	l8535
u4010:
	line	20
	
l8543:	
	movf	(___lwmod@dividend+1),w
	movwf	(?___lwmod+1)
	movf	(___lwmod@dividend),w
	movwf	(?___lwmod)
	line	21
	
l4162:	
	return
	opt stack 0
GLOBAL	__end_of___lwmod
	__end_of___lwmod:
	signat	___lwmod,8314
	global	___lmul

;; *************** function ___lmul *****************
;; Defined at:
;;		line 3 in file "C:\Program Files\Microchip\xc8\v1.10\sources\lmul.c"
;; Parameters:    Size  Location     Type
;;  multiplier      4    0[BANK0 ] unsigned long 
;;  multiplicand    4    4[BANK0 ] unsigned long 
;; Auto vars:     Size  Location     Type
;;  product         4    8[BANK0 ] unsigned long 
;; Return value:  Size  Location     Type
;;                  4    0[BANK0 ] unsigned long 
;; Registers used:
;;		wreg, status,2, status,0
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       8       0       0
;;      Locals:         0       4       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0      12       0       0
;;Total ram usage:       12 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		_voltage_adc
;; This function uses a non-reentrant model
;;
psect	text731,local,class=CODE,delta=2,merge=1
global __ptext731
__ptext731:	;psect for function ___lmul
psect	text731
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\lmul.c"
	line	3
	global	__size_of___lmul
	__size_of___lmul	equ	__end_of___lmul-___lmul
	
___lmul:	
	opt	stack 5
; Regs used in ___lmul: [wreg+status,2+status,0]
	line	4
	
l8653:	
	clrf	(___lmul@product)
	clrf	(___lmul@product+1)
	clrf	(___lmul@product+2)
	clrf	(___lmul@product+3)
	line	6
	
l4214:	
	line	7
	btfss	(___lmul@multiplier),(0)&7
	goto	u4291
	goto	u4290
u4291:
	goto	l8657
u4290:
	line	8
	
l8655:	
	movf	(___lmul@multiplicand),w
	addwf	(___lmul@product),f
	movf	(___lmul@multiplicand+1),w
	clrz
	skipnc
	addlw	1
	skipnz
	goto	u4301
	addwf	(___lmul@product+1),f
u4301:
	movf	(___lmul@multiplicand+2),w
	clrz
	skipnc
	addlw	1
	skipnz
	goto	u4302
	addwf	(___lmul@product+2),f
u4302:
	movf	(___lmul@multiplicand+3),w
	clrz
	skipnc
	addlw	1
	skipnz
	goto	u4303
	addwf	(___lmul@product+3),f
u4303:

	line	9
	
l8657:	
	clrc
	rlf	(___lmul@multiplicand),f
	rlf	(___lmul@multiplicand+1),f
	rlf	(___lmul@multiplicand+2),f
	rlf	(___lmul@multiplicand+3),f
	line	10
	
l8659:	
	clrc
	rrf	(___lmul@multiplier+3),f
	rrf	(___lmul@multiplier+2),f
	rrf	(___lmul@multiplier+1),f
	rrf	(___lmul@multiplier),f
	line	11
	movf	(___lmul@multiplier+3),w
	iorwf	(___lmul@multiplier+2),w
	iorwf	(___lmul@multiplier+1),w
	iorwf	(___lmul@multiplier),w
	skipz
	goto	u4311
	goto	u4310
u4311:
	goto	l4214
u4310:
	line	12
	
l8661:	
	movf	(___lmul@product+3),w
	movwf	(?___lmul+3)
	movf	(___lmul@product+2),w
	movwf	(?___lmul+2)
	movf	(___lmul@product+1),w
	movwf	(?___lmul+1)
	movf	(___lmul@product),w
	movwf	(?___lmul)

	line	13
	
l4217:	
	return
	opt stack 0
GLOBAL	__end_of___lmul
	__end_of___lmul:
	signat	___lmul,8316
	global	___ftsub

;; *************** function ___ftsub *****************
;; Defined at:
;;		line 17 in file "C:\Program Files\Microchip\xc8\v1.10\sources\ftsub.c"
;; Parameters:    Size  Location     Type
;;  f2              3   26[BANK0 ] float 
;;  f1              3   29[BANK0 ] float 
;; Auto vars:     Size  Location     Type
;;		None
;; Return value:  Size  Location     Type
;;                  3   26[BANK0 ] float 
;; Registers used:
;;		wreg, status,2, status,0, pclath, cstack
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       6       0       0
;;      Locals:         0       0       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0       6       0       0
;;Total ram usage:        6 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    3
;; This function calls:
;;		___ftadd
;; This function is called by:
;;		_sqrt
;; This function uses a non-reentrant model
;;
psect	text732,local,class=CODE,delta=2,merge=1
global __ptext732
__ptext732:	;psect for function ___ftsub
psect	text732
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\ftsub.c"
	line	17
	global	__size_of___ftsub
	__size_of___ftsub	equ	__end_of___ftsub-___ftsub
	
___ftsub:	
	opt	stack 2
; Regs used in ___ftsub: [wreg+status,2+status,0+pclath+cstack]
	line	18
	
l8665:	
	movlw	080h
	xorwf	(___ftsub@f2+2),f
	line	19
	
l8667:	
	movf	(___ftsub@f1),w
	movwf	(?___ftadd)
	movf	(___ftsub@f1+1),w
	movwf	(?___ftadd+1)
	movf	(___ftsub@f1+2),w
	movwf	(?___ftadd+2)
	movf	(___ftsub@f2),w
	movwf	0+(?___ftadd)+03h
	movf	(___ftsub@f2+1),w
	movwf	1+(?___ftadd)+03h
	movf	(___ftsub@f2+2),w
	movwf	2+(?___ftadd)+03h
	fcall	___ftadd
	movf	(0+(?___ftadd)),w
	movwf	(?___ftsub)
	movf	(1+(?___ftadd)),w
	movwf	(?___ftsub+1)
	movf	(2+(?___ftadd)),w
	movwf	(?___ftsub+2)
	line	20
	
l4222:	
	return
	opt stack 0
GLOBAL	__end_of___ftsub
	__end_of___ftsub:
	signat	___ftsub,8315
	global	___ftadd

;; *************** function ___ftadd *****************
;; Defined at:
;;		line 87 in file "C:\Program Files\Microchip\xc8\v1.10\sources\ftadd.c"
;; Parameters:    Size  Location     Type
;;  f1              3   14[BANK0 ] float 
;;  f2              3   17[BANK0 ] float 
;; Auto vars:     Size  Location     Type
;;  exp1            1   25[BANK0 ] unsigned char 
;;  exp2            1   24[BANK0 ] unsigned char 
;;  sign            1   23[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;                  3   14[BANK0 ] float 
;; Registers used:
;;		wreg, status,2, status,0, pclath, cstack
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       6       0       0
;;      Locals:         0       3       0       0
;;      Temps:          0       3       0       0
;;      Totals:         0      12       0       0
;;Total ram usage:       12 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    2
;; This function calls:
;;		___ftpack
;; This function is called by:
;;		_main
;;		_voltage_adc
;;		_voltage_adc_cal
;;		___ftsub
;; This function uses a non-reentrant model
;;
psect	text733,local,class=CODE,delta=2,merge=1
global __ptext733
__ptext733:	;psect for function ___ftadd
psect	text733
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\ftadd.c"
	line	87
	global	__size_of___ftadd
	__size_of___ftadd	equ	__end_of___ftadd-___ftadd
	
___ftadd:	
	opt	stack 5
; Regs used in ___ftadd: [wreg+status,2+status,0+pclath+cstack]
	line	90
	
l8547:	
	movf	(___ftadd@f1),w
	movwf	((??___ftadd+0)+0)
	movf	(___ftadd@f1+1),w
	movwf	((??___ftadd+0)+0+1)
	movf	(___ftadd@f1+2),w
	movwf	((??___ftadd+0)+0+2)
	clrc
	rlf	(??___ftadd+0)+1,w
	rlf	(??___ftadd+0)+2,w
	movwf	(___ftadd@exp1)
	line	91
	movf	(___ftadd@f2),w
	movwf	((??___ftadd+0)+0)
	movf	(___ftadd@f2+1),w
	movwf	((??___ftadd+0)+0+1)
	movf	(___ftadd@f2+2),w
	movwf	((??___ftadd+0)+0+2)
	clrc
	rlf	(??___ftadd+0)+1,w
	rlf	(??___ftadd+0)+2,w
	movwf	(___ftadd@exp2)
	line	92
	
l8549:	
	movf	(___ftadd@exp1),w
	skipz
	goto	u4020
	goto	l8555
u4020:
	
l8551:	
	movf	(___ftadd@exp2),w
	subwf	(___ftadd@exp1),w
	skipnc
	goto	u4031
	goto	u4030
u4031:
	goto	l8559
u4030:
	
l8553:	
	movf	(___ftadd@exp2),w
	movwf	(??___ftadd+0)+0
	movf	(___ftadd@exp1),w
	subwf	(??___ftadd+0)+0,f
	movlw	(019h)
	subwf	0+(??___ftadd+0)+0,w
	skipc
	goto	u4041
	goto	u4040
u4041:
	goto	l8559
u4040:
	line	93
	
l8555:	
	movf	(___ftadd@f2),w
	movwf	(?___ftadd)
	movf	(___ftadd@f2+1),w
	movwf	(?___ftadd+1)
	movf	(___ftadd@f2+2),w
	movwf	(?___ftadd+2)
	goto	l4186
	line	94
	
l8559:	
	movf	(___ftadd@exp2),w
	skipz
	goto	u4050
	goto	l4189
u4050:
	
l8561:	
	movf	(___ftadd@exp1),w
	subwf	(___ftadd@exp2),w
	skipnc
	goto	u4061
	goto	u4060
u4061:
	goto	l8565
u4060:
	
l8563:	
	movf	(___ftadd@exp1),w
	movwf	(??___ftadd+0)+0
	movf	(___ftadd@exp2),w
	subwf	(??___ftadd+0)+0,f
	movlw	(019h)
	subwf	0+(??___ftadd+0)+0,w
	skipc
	goto	u4071
	goto	u4070
u4071:
	goto	l8565
u4070:
	
l4189:	
	line	95
	goto	l4186
	line	96
	
l8565:	
	movlw	(06h)
	movwf	(___ftadd@sign)
	line	97
	
l8567:	
	btfss	(___ftadd@f1+2),(23)&7
	goto	u4081
	goto	u4080
u4081:
	goto	l4190
u4080:
	line	98
	
l8569:	
	bsf	(___ftadd@sign)+(7/8),(7)&7
	
l4190:	
	line	99
	btfss	(___ftadd@f2+2),(23)&7
	goto	u4091
	goto	u4090
u4091:
	goto	l4191
u4090:
	line	100
	
l8571:	
	bsf	(___ftadd@sign)+(6/8),(6)&7
	
l4191:	
	line	101
	bsf	(___ftadd@f1)+(15/8),(15)&7
	line	102
	
l8573:	
	movlw	0FFh
	andwf	(___ftadd@f1),f
	movlw	0FFh
	andwf	(___ftadd@f1+1),f
	movlw	0
	andwf	(___ftadd@f1+2),f
	line	103
	
l8575:	
	bsf	(___ftadd@f2)+(15/8),(15)&7
	line	104
	movlw	0FFh
	andwf	(___ftadd@f2),f
	movlw	0FFh
	andwf	(___ftadd@f2+1),f
	movlw	0
	andwf	(___ftadd@f2+2),f
	line	106
	movf	(___ftadd@exp2),w
	subwf	(___ftadd@exp1),w
	skipnc
	goto	u4101
	goto	u4100
u4101:
	goto	l8587
u4100:
	line	110
	
l8577:	
	clrc
	rlf	(___ftadd@f2),f
	rlf	(___ftadd@f2+1),f
	rlf	(___ftadd@f2+2),f
	line	111
	decf	(___ftadd@exp2),f
	line	112
	
l8579:	
	movf	(___ftadd@exp2),w
	xorwf	(___ftadd@exp1),w
	skipnz
	goto	u4111
	goto	u4110
u4111:
	goto	l8585
u4110:
	
l8581:	
	decf	(___ftadd@sign),f
	movf	((___ftadd@sign)),w
	andlw	07h
	btfss	status,2
	goto	u4121
	goto	u4120
u4121:
	goto	l8577
u4120:
	goto	l8585
	line	114
	
l8583:	
	clrc
	rrf	(___ftadd@f1+2),f
	rrf	(___ftadd@f1+1),f
	rrf	(___ftadd@f1),f
	line	115
	incf	(___ftadd@exp1),f
	line	113
	
l8585:	
	movf	(___ftadd@exp1),w
	xorwf	(___ftadd@exp2),w
	skipz
	goto	u4131
	goto	u4130
u4131:
	goto	l8583
u4130:
	goto	l4200
	line	117
	
l8587:	
	movf	(___ftadd@exp1),w
	subwf	(___ftadd@exp2),w
	skipnc
	goto	u4141
	goto	u4140
u4141:
	goto	l4200
u4140:
	line	121
	
l8589:	
	clrc
	rlf	(___ftadd@f1),f
	rlf	(___ftadd@f1+1),f
	rlf	(___ftadd@f1+2),f
	line	122
	decf	(___ftadd@exp1),f
	line	123
	
l8591:	
	movf	(___ftadd@exp2),w
	xorwf	(___ftadd@exp1),w
	skipnz
	goto	u4151
	goto	u4150
u4151:
	goto	l8597
u4150:
	
l8593:	
	decf	(___ftadd@sign),f
	movf	((___ftadd@sign)),w
	andlw	07h
	btfss	status,2
	goto	u4161
	goto	u4160
u4161:
	goto	l8589
u4160:
	goto	l8597
	line	125
	
l8595:	
	clrc
	rrf	(___ftadd@f2+2),f
	rrf	(___ftadd@f2+1),f
	rrf	(___ftadd@f2),f
	line	126
	incf	(___ftadd@exp2),f
	line	124
	
l8597:	
	movf	(___ftadd@exp1),w
	xorwf	(___ftadd@exp2),w
	skipz
	goto	u4171
	goto	u4170
u4171:
	goto	l8595
u4170:
	line	129
	
l4200:	
	btfss	(___ftadd@sign),(7)&7
	goto	u4181
	goto	u4180
u4181:
	goto	l8603
u4180:
	line	131
	
l8599:	
	movlw	0FFh
	xorwf	(___ftadd@f1),f
	movlw	0FFh
	xorwf	(___ftadd@f1+1),f
	movlw	0FFh
	xorwf	(___ftadd@f1+2),f
	line	132
	
l8601:	
	incf	(___ftadd@f1),f
	skipnz
	incf	(___ftadd@f1+1),f
	skipnz
	incf	(___ftadd@f1+2),f
	line	134
	
l8603:	
	btfss	(___ftadd@sign),(6)&7
	goto	u4191
	goto	u4190
u4191:
	goto	l8609
u4190:
	line	136
	
l8605:	
	movlw	0FFh
	xorwf	(___ftadd@f2),f
	movlw	0FFh
	xorwf	(___ftadd@f2+1),f
	movlw	0FFh
	xorwf	(___ftadd@f2+2),f
	line	137
	
l8607:	
	incf	(___ftadd@f2),f
	skipnz
	incf	(___ftadd@f2+1),f
	skipnz
	incf	(___ftadd@f2+2),f
	line	139
	
l8609:	
	clrf	(___ftadd@sign)
	line	140
	
l8611:	
	movf	(___ftadd@f1),w
	addwf	(___ftadd@f2),f
	movf	(___ftadd@f1+1),w
	clrz
	skipnc
	incf	(___ftadd@f1+1),w
	skipnz
	goto	u4201
	addwf	(___ftadd@f2+1),f
u4201:
	movf	(___ftadd@f1+2),w
	clrz
	skipnc
	incf	(___ftadd@f1+2),w
	skipnz
	goto	u4202
	addwf	(___ftadd@f2+2),f
u4202:

	line	141
	
l8613:	
	btfss	(___ftadd@f2+2),(23)&7
	goto	u4211
	goto	u4210
u4211:
	goto	l8621
u4210:
	line	142
	
l8615:	
	movlw	0FFh
	xorwf	(___ftadd@f2),f
	movlw	0FFh
	xorwf	(___ftadd@f2+1),f
	movlw	0FFh
	xorwf	(___ftadd@f2+2),f
	line	143
	
l8617:	
	incf	(___ftadd@f2),f
	skipnz
	incf	(___ftadd@f2+1),f
	skipnz
	incf	(___ftadd@f2+2),f
	line	144
	
l8619:	
	clrf	(___ftadd@sign)
	incf	(___ftadd@sign),f
	line	146
	
l8621:	
	movf	(___ftadd@f2),w
	movwf	(?___ftpack)
	movf	(___ftadd@f2+1),w
	movwf	(?___ftpack+1)
	movf	(___ftadd@f2+2),w
	movwf	(?___ftpack+2)
	movf	(___ftadd@exp1),w
	movwf	0+(?___ftpack)+03h
	movf	(___ftadd@sign),w
	movwf	0+(?___ftpack)+04h
	fcall	___ftpack
	movf	(0+(?___ftpack)),w
	movwf	(?___ftadd)
	movf	(1+(?___ftpack)),w
	movwf	(?___ftadd+1)
	movf	(2+(?___ftpack)),w
	movwf	(?___ftadd+2)
	line	148
	
l4186:	
	return
	opt stack 0
GLOBAL	__end_of___ftadd
	__end_of___ftadd:
	signat	___ftadd,8315
	global	___ftdiv

;; *************** function ___ftdiv *****************
;; Defined at:
;;		line 50 in file "C:\Program Files\Microchip\xc8\v1.10\sources\ftdiv.c"
;; Parameters:    Size  Location     Type
;;  f2              3   11[BANK0 ] float 
;;  f1              3   14[BANK0 ] float 
;; Auto vars:     Size  Location     Type
;;  f3              3   21[BANK0 ] float 
;;  sign            1   25[BANK0 ] unsigned char 
;;  exp             1   24[BANK0 ] unsigned char 
;;  cntr            1   20[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;                  3   11[BANK0 ] float 
;; Registers used:
;;		wreg, status,2, status,0, pclath, cstack
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       6       0       0
;;      Locals:         0       6       0       0
;;      Temps:          0       3       0       0
;;      Totals:         0      15       0       0
;;Total ram usage:       15 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    2
;; This function calls:
;;		___ftpack
;; This function is called by:
;;		_main
;;		_ReadCtRatio
;;		_voltage_adc
;;		_voltage_adc_cal
;; This function uses a non-reentrant model
;;
psect	text734,local,class=CODE,delta=2,merge=1
global __ptext734
__ptext734:	;psect for function ___ftdiv
psect	text734
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\ftdiv.c"
	line	50
	global	__size_of___ftdiv
	__size_of___ftdiv	equ	__end_of___ftdiv-___ftdiv
	
___ftdiv:	
	opt	stack 3
; Regs used in ___ftdiv: [wreg+status,2+status,0+pclath+cstack]
	line	55
	
l8671:	
	movf	(___ftdiv@f1),w
	movwf	((??___ftdiv+0)+0)
	movf	(___ftdiv@f1+1),w
	movwf	((??___ftdiv+0)+0+1)
	movf	(___ftdiv@f1+2),w
	movwf	((??___ftdiv+0)+0+2)
	clrc
	rlf	(??___ftdiv+0)+1,w
	rlf	(??___ftdiv+0)+2,w
	movwf	(___ftdiv@exp)
	movf	((___ftdiv@exp)),f
	skipz
	goto	u4321
	goto	u4320
u4321:
	goto	l8677
u4320:
	line	56
	
l8673:	
	clrf	(?___ftdiv)
	clrf	(?___ftdiv+1)
	clrf	(?___ftdiv+2)
	goto	l4228
	line	57
	
l8677:	
	movf	(___ftdiv@f2),w
	movwf	((??___ftdiv+0)+0)
	movf	(___ftdiv@f2+1),w
	movwf	((??___ftdiv+0)+0+1)
	movf	(___ftdiv@f2+2),w
	movwf	((??___ftdiv+0)+0+2)
	clrc
	rlf	(??___ftdiv+0)+1,w
	rlf	(??___ftdiv+0)+2,w
	movwf	(___ftdiv@sign)
	movf	((___ftdiv@sign)),f
	skipz
	goto	u4331
	goto	u4330
u4331:
	goto	l4229
u4330:
	line	58
	
l8679:	
	clrf	(?___ftdiv)
	clrf	(?___ftdiv+1)
	clrf	(?___ftdiv+2)
	goto	l4228
	
l4229:	
	line	59
	clrf	(___ftdiv@f3)
	clrf	(___ftdiv@f3+1)
	clrf	(___ftdiv@f3+2)
	line	60
	
l8683:	
	movlw	(089h)
	addwf	(___ftdiv@sign),w
	movwf	(??___ftdiv+0)+0
	movf	0+(??___ftdiv+0)+0,w
	subwf	(___ftdiv@exp),f
	line	61
	
l8685:	
	movf	0+(((___ftdiv@f1))+2),w
	movwf	(___ftdiv@sign)
	line	62
	
l8687:	
	movf	0+(((___ftdiv@f2))+2),w
	xorwf	(___ftdiv@sign),f
	line	63
	
l8689:	
	movlw	(080h)
	andwf	(___ftdiv@sign),f
	line	64
	
l8691:	
	bsf	(___ftdiv@f1)+(15/8),(15)&7
	line	65
	
l8693:	
	movlw	0FFh
	andwf	(___ftdiv@f1),f
	movlw	0FFh
	andwf	(___ftdiv@f1+1),f
	movlw	0
	andwf	(___ftdiv@f1+2),f
	line	66
	
l8695:	
	bsf	(___ftdiv@f2)+(15/8),(15)&7
	line	67
	
l8697:	
	movlw	0FFh
	andwf	(___ftdiv@f2),f
	movlw	0FFh
	andwf	(___ftdiv@f2+1),f
	movlw	0
	andwf	(___ftdiv@f2+2),f
	line	68
	
l8699:	
	movlw	(018h)
	movwf	(___ftdiv@cntr)
	line	70
	
l8701:	
	clrc
	rlf	(___ftdiv@f3),f
	rlf	(___ftdiv@f3+1),f
	rlf	(___ftdiv@f3+2),f
	line	71
	movf	(___ftdiv@f2+2),w
	subwf	(___ftdiv@f1+2),w
	skipz
	goto	u4345
	movf	(___ftdiv@f2+1),w
	subwf	(___ftdiv@f1+1),w
	skipz
	goto	u4345
	movf	(___ftdiv@f2),w
	subwf	(___ftdiv@f1),w
u4345:
	skipc
	goto	u4341
	goto	u4340
u4341:
	goto	l8707
u4340:
	line	72
	
l8703:	
	movf	(___ftdiv@f2),w
	subwf	(___ftdiv@f1),f
	movf	(___ftdiv@f2+1),w
	skipc
	incfsz	(___ftdiv@f2+1),w
	subwf	(___ftdiv@f1+1),f
	movf	(___ftdiv@f2+2),w
	skipc
	incf	(___ftdiv@f2+2),w
	subwf	(___ftdiv@f1+2),f
	line	73
	
l8705:	
	bsf	(___ftdiv@f3)+(0/8),(0)&7
	line	75
	
l8707:	
	clrc
	rlf	(___ftdiv@f1),f
	rlf	(___ftdiv@f1+1),f
	rlf	(___ftdiv@f1+2),f
	line	76
	
l8709:	
	decfsz	(___ftdiv@cntr),f
	goto	u4351
	goto	u4350
u4351:
	goto	l8701
u4350:
	line	77
	
l8711:	
	movf	(___ftdiv@f3),w
	movwf	(?___ftpack)
	movf	(___ftdiv@f3+1),w
	movwf	(?___ftpack+1)
	movf	(___ftdiv@f3+2),w
	movwf	(?___ftpack+2)
	movf	(___ftdiv@exp),w
	movwf	0+(?___ftpack)+03h
	movf	(___ftdiv@sign),w
	movwf	0+(?___ftpack)+04h
	fcall	___ftpack
	movf	(0+(?___ftpack)),w
	movwf	(?___ftdiv)
	movf	(1+(?___ftpack)),w
	movwf	(?___ftdiv+1)
	movf	(2+(?___ftpack)),w
	movwf	(?___ftdiv+2)
	line	78
	
l4228:	
	return
	opt stack 0
GLOBAL	__end_of___ftdiv
	__end_of___ftdiv:
	signat	___ftdiv,8315
	global	___ftmul

;; *************** function ___ftmul *****************
;; Defined at:
;;		line 52 in file "C:\Program Files\Microchip\xc8\v1.10\sources\ftmul.c"
;; Parameters:    Size  Location     Type
;;  f1              3   14[BANK0 ] float 
;;  f2              3   17[BANK0 ] float 
;; Auto vars:     Size  Location     Type
;;  f3_as_produc    3   24[BANK0 ] unsigned um
;;  sign            1   28[BANK0 ] unsigned char 
;;  cntr            1   27[BANK0 ] unsigned char 
;;  exp             1   23[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;                  3   14[BANK0 ] float 
;; Registers used:
;;		wreg, status,2, status,0, pclath, cstack
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       6       0       0
;;      Locals:         0       6       0       0
;;      Temps:          0       3       0       0
;;      Totals:         0      15       0       0
;;Total ram usage:       15 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    2
;; This function calls:
;;		___ftpack
;; This function is called by:
;;		_main
;;		_sqrt
;; This function uses a non-reentrant model
;;
psect	text735,local,class=CODE,delta=2,merge=1
global __ptext735
__ptext735:	;psect for function ___ftmul
psect	text735
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\ftmul.c"
	line	52
	global	__size_of___ftmul
	__size_of___ftmul	equ	__end_of___ftmul-___ftmul
	
___ftmul:	
	opt	stack 5
; Regs used in ___ftmul: [wreg+status,2+status,0+pclath+cstack]
	line	56
	
l8715:	
	movf	(___ftmul@f1),w
	movwf	((??___ftmul+0)+0)
	movf	(___ftmul@f1+1),w
	movwf	((??___ftmul+0)+0+1)
	movf	(___ftmul@f1+2),w
	movwf	((??___ftmul+0)+0+2)
	clrc
	rlf	(??___ftmul+0)+1,w
	rlf	(??___ftmul+0)+2,w
	movwf	(___ftmul@exp)
	movf	((___ftmul@exp)),f
	skipz
	goto	u4361
	goto	u4360
u4361:
	goto	l8721
u4360:
	line	57
	
l8717:	
	clrf	(?___ftmul)
	clrf	(?___ftmul+1)
	clrf	(?___ftmul+2)
	goto	l4238
	line	58
	
l8721:	
	movf	(___ftmul@f2),w
	movwf	((??___ftmul+0)+0)
	movf	(___ftmul@f2+1),w
	movwf	((??___ftmul+0)+0+1)
	movf	(___ftmul@f2+2),w
	movwf	((??___ftmul+0)+0+2)
	clrc
	rlf	(??___ftmul+0)+1,w
	rlf	(??___ftmul+0)+2,w
	movwf	(___ftmul@sign)
	movf	((___ftmul@sign)),f
	skipz
	goto	u4371
	goto	u4370
u4371:
	goto	l8727
u4370:
	line	59
	
l8723:	
	clrf	(?___ftmul)
	clrf	(?___ftmul+1)
	clrf	(?___ftmul+2)
	goto	l4238
	line	60
	
l8727:	
	movf	(___ftmul@sign),w
	addlw	07Bh
	addwf	(___ftmul@exp),f
	line	61
	
l8729:	
	movf	0+(((___ftmul@f1))+2),w
	movwf	(___ftmul@sign)
	line	62
	
l8731:	
	movf	0+(((___ftmul@f2))+2),w
	xorwf	(___ftmul@sign),f
	line	63
	
l8733:	
	movlw	(080h)
	andwf	(___ftmul@sign),f
	line	64
	
l8735:	
	bsf	(___ftmul@f1)+(15/8),(15)&7
	line	66
	
l8737:	
	bsf	(___ftmul@f2)+(15/8),(15)&7
	line	67
	
l8739:	
	movlw	0FFh
	andwf	(___ftmul@f2),f
	movlw	0FFh
	andwf	(___ftmul@f2+1),f
	movlw	0
	andwf	(___ftmul@f2+2),f
	line	68
	
l8741:	
	clrf	(___ftmul@f3_as_product)
	clrf	(___ftmul@f3_as_product+1)
	clrf	(___ftmul@f3_as_product+2)
	line	69
	
l8743:	
	movlw	(07h)
	movwf	(___ftmul@cntr)
	line	71
	
l8745:	
	btfss	(___ftmul@f1),(0)&7
	goto	u4381
	goto	u4380
u4381:
	goto	l8749
u4380:
	line	72
	
l8747:	
	movf	(___ftmul@f2),w
	addwf	(___ftmul@f3_as_product),f
	movf	(___ftmul@f2+1),w
	clrz
	skipnc
	incf	(___ftmul@f2+1),w
	skipnz
	goto	u4391
	addwf	(___ftmul@f3_as_product+1),f
u4391:
	movf	(___ftmul@f2+2),w
	clrz
	skipnc
	incf	(___ftmul@f2+2),w
	skipnz
	goto	u4392
	addwf	(___ftmul@f3_as_product+2),f
u4392:

	line	73
	
l8749:	
	clrc
	rrf	(___ftmul@f1+2),f
	rrf	(___ftmul@f1+1),f
	rrf	(___ftmul@f1),f
	line	74
	
l8751:	
	clrc
	rlf	(___ftmul@f2),f
	rlf	(___ftmul@f2+1),f
	rlf	(___ftmul@f2+2),f
	line	75
	
l8753:	
	decfsz	(___ftmul@cntr),f
	goto	u4401
	goto	u4400
u4401:
	goto	l8745
u4400:
	line	76
	
l8755:	
	movlw	(09h)
	movwf	(___ftmul@cntr)
	line	78
	
l8757:	
	btfss	(___ftmul@f1),(0)&7
	goto	u4411
	goto	u4410
u4411:
	goto	l8761
u4410:
	line	79
	
l8759:	
	movf	(___ftmul@f2),w
	addwf	(___ftmul@f3_as_product),f
	movf	(___ftmul@f2+1),w
	clrz
	skipnc
	incf	(___ftmul@f2+1),w
	skipnz
	goto	u4421
	addwf	(___ftmul@f3_as_product+1),f
u4421:
	movf	(___ftmul@f2+2),w
	clrz
	skipnc
	incf	(___ftmul@f2+2),w
	skipnz
	goto	u4422
	addwf	(___ftmul@f3_as_product+2),f
u4422:

	line	80
	
l8761:	
	clrc
	rrf	(___ftmul@f1+2),f
	rrf	(___ftmul@f1+1),f
	rrf	(___ftmul@f1),f
	line	81
	
l8763:	
	clrc
	rrf	(___ftmul@f3_as_product+2),f
	rrf	(___ftmul@f3_as_product+1),f
	rrf	(___ftmul@f3_as_product),f
	line	82
	
l8765:	
	decfsz	(___ftmul@cntr),f
	goto	u4431
	goto	u4430
u4431:
	goto	l8757
u4430:
	line	83
	
l8767:	
	movf	(___ftmul@f3_as_product),w
	movwf	(?___ftpack)
	movf	(___ftmul@f3_as_product+1),w
	movwf	(?___ftpack+1)
	movf	(___ftmul@f3_as_product+2),w
	movwf	(?___ftpack+2)
	movf	(___ftmul@exp),w
	movwf	0+(?___ftpack)+03h
	movf	(___ftmul@sign),w
	movwf	0+(?___ftpack)+04h
	fcall	___ftpack
	movf	(0+(?___ftpack)),w
	movwf	(?___ftmul)
	movf	(1+(?___ftpack)),w
	movwf	(?___ftmul+1)
	movf	(2+(?___ftpack)),w
	movwf	(?___ftmul+2)
	line	84
	
l4238:	
	return
	opt stack 0
GLOBAL	__end_of___ftmul
	__end_of___ftmul:
	signat	___ftmul,8315
	global	___fttol

;; *************** function ___fttol *****************
;; Defined at:
;;		line 45 in file "C:\Program Files\Microchip\xc8\v1.10\sources\fttol.c"
;; Parameters:    Size  Location     Type
;;  f1              3    0[BANK0 ] float 
;; Auto vars:     Size  Location     Type
;;  lval            4    8[BANK0 ] unsigned long 
;;  exp1            1   12[BANK0 ] unsigned char 
;;  sign1           1    7[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;                  4    0[BANK0 ] long 
;; Registers used:
;;		wreg, status,2, status,0
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       4       0       0
;;      Locals:         0       6       0       0
;;      Temps:          0       3       0       0
;;      Totals:         0      13       0       0
;;Total ram usage:       13 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		_main
;;		_voltage_adc_cal
;; This function uses a non-reentrant model
;;
psect	text736,local,class=CODE,delta=2,merge=1
global __ptext736
__ptext736:	;psect for function ___fttol
psect	text736
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\fttol.c"
	line	45
	global	__size_of___fttol
	__size_of___fttol	equ	__end_of___fttol-___fttol
	
___fttol:	
	opt	stack 6
; Regs used in ___fttol: [wreg+status,2+status,0]
	line	49
	
l8771:	
	movf	(___fttol@f1),w
	movwf	((??___fttol+0)+0)
	movf	(___fttol@f1+1),w
	movwf	((??___fttol+0)+0+1)
	movf	(___fttol@f1+2),w
	movwf	((??___fttol+0)+0+2)
	clrc
	rlf	(??___fttol+0)+1,w
	rlf	(??___fttol+0)+2,w
	movwf	(___fttol@exp1)
	movf	((___fttol@exp1)),f
	skipz
	goto	u4441
	goto	u4440
u4441:
	goto	l8775
u4440:
	line	50
	
l8773:	
	clrf	(?___fttol)
	clrf	(?___fttol+1)
	clrf	(?___fttol+2)
	clrf	(?___fttol+3)
	goto	l4249
	line	51
	
l8775:	
	movf	(___fttol@f1),w
	movwf	((??___fttol+0)+0)
	movf	(___fttol@f1+1),w
	movwf	((??___fttol+0)+0+1)
	movf	(___fttol@f1+2),w
	movwf	((??___fttol+0)+0+2)
	movlw	017h
u4455:
	clrc
	rrf	(??___fttol+0)+2,f
	rrf	(??___fttol+0)+1,f
	rrf	(??___fttol+0)+0,f
u4450:
	addlw	-1
	skipz
	goto	u4455
	movf	0+(??___fttol+0)+0,w
	movwf	(___fttol@sign1)
	line	52
	
l8777:	
	bsf	(___fttol@f1)+(15/8),(15)&7
	line	53
	
l8779:	
	movlw	0FFh
	andwf	(___fttol@f1),f
	movlw	0FFh
	andwf	(___fttol@f1+1),f
	movlw	0
	andwf	(___fttol@f1+2),f
	line	54
	
l8781:	
	movf	(___fttol@f1),w
	movwf	(___fttol@lval)
	movf	(___fttol@f1+1),w
	movwf	((___fttol@lval))+1
	movf	(___fttol@f1+2),w
	movwf	((___fttol@lval))+2
	clrf	((___fttol@lval))+3
	line	55
	
l8783:	
	movlw	low(08Eh)
	subwf	(___fttol@exp1),f
	line	56
	
l8785:	
	btfss	(___fttol@exp1),7
	goto	u4461
	goto	u4460
u4461:
	goto	l8795
u4460:
	line	57
	
l8787:	
	movf	(___fttol@exp1),w
	xorlw	80h
	addlw	-((-15)^80h)
	skipnc
	goto	u4471
	goto	u4470
u4471:
	goto	l8791
u4470:
	goto	l8773
	line	60
	
l8791:	
	clrc
	rrf	(___fttol@lval+3),f
	rrf	(___fttol@lval+2),f
	rrf	(___fttol@lval+1),f
	rrf	(___fttol@lval),f
	line	61
	
l8793:	
	incfsz	(___fttol@exp1),f
	goto	u4481
	goto	u4480
u4481:
	goto	l8791
u4480:
	goto	l8801
	line	63
	
l8795:	
	movlw	(018h)
	subwf	(___fttol@exp1),w
	skipc
	goto	u4491
	goto	u4490
u4491:
	goto	l4256
u4490:
	goto	l8773
	line	66
	
l8799:	
	clrc
	rlf	(___fttol@lval),f
	rlf	(___fttol@lval+1),f
	rlf	(___fttol@lval+2),f
	rlf	(___fttol@lval+3),f
	line	67
	decf	(___fttol@exp1),f
	line	68
	
l4256:	
	line	65
	movf	(___fttol@exp1),f
	skipz
	goto	u4501
	goto	u4500
u4501:
	goto	l8799
u4500:
	line	70
	
l8801:	
	movf	(___fttol@sign1),w
	skipz
	goto	u4510
	goto	l8805
u4510:
	line	71
	
l8803:	
	comf	(___fttol@lval),f
	comf	(___fttol@lval+1),f
	comf	(___fttol@lval+2),f
	comf	(___fttol@lval+3),f
	incf	(___fttol@lval),f
	skipnz
	incf	(___fttol@lval+1),f
	skipnz
	incf	(___fttol@lval+2),f
	skipnz
	incf	(___fttol@lval+3),f
	line	72
	
l8805:	
	movf	(___fttol@lval+3),w
	movwf	(?___fttol+3)
	movf	(___fttol@lval+2),w
	movwf	(?___fttol+2)
	movf	(___fttol@lval+1),w
	movwf	(?___fttol+1)
	movf	(___fttol@lval),w
	movwf	(?___fttol)

	line	73
	
l4249:	
	return
	opt stack 0
GLOBAL	__end_of___fttol
	__end_of___fttol:
	signat	___fttol,4220
	global	___awtoft

;; *************** function ___awtoft *****************
;; Defined at:
;;		line 33 in file "C:\Program Files\Microchip\xc8\v1.10\sources\awtoft.c"
;; Parameters:    Size  Location     Type
;;  c               2    8[BANK0 ] int 
;; Auto vars:     Size  Location     Type
;;  sign            1   11[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;                  3    8[BANK0 ] float 
;; Registers used:
;;		wreg, status,2, status,0, pclath, cstack
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       3       0       0
;;      Locals:         0       1       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0       4       0       0
;;Total ram usage:        4 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    2
;; This function calls:
;;		___ftpack
;; This function is called by:
;;		_main
;; This function uses a non-reentrant model
;;
psect	text737,local,class=CODE,delta=2,merge=1
global __ptext737
__ptext737:	;psect for function ___awtoft
psect	text737
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\awtoft.c"
	line	33
	global	__size_of___awtoft
	__size_of___awtoft	equ	__end_of___awtoft-___awtoft
	
___awtoft:	
	opt	stack 5
; Regs used in ___awtoft: [wreg+status,2+status,0+pclath+cstack]
	line	36
	
l8809:	
	clrf	(___awtoft@sign)
	line	37
	
l8811:	
	btfss	(___awtoft@c+1),7
	goto	u4521
	goto	u4520
u4521:
	goto	l8817
u4520:
	line	38
	
l8813:	
	comf	(___awtoft@c),f
	comf	(___awtoft@c+1),f
	incf	(___awtoft@c),f
	skipnz
	incf	(___awtoft@c+1),f
	line	39
	
l8815:	
	clrf	(___awtoft@sign)
	incf	(___awtoft@sign),f
	line	41
	
l8817:	
	movf	(___awtoft@c),w
	movwf	(?___ftpack)
	movf	(___awtoft@c+1),w
	movwf	(?___ftpack+1)
	clrf	(?___ftpack+2)
	movlw	(08Eh)
	movwf	0+(?___ftpack)+03h
	movf	(___awtoft@sign),w
	movwf	0+(?___ftpack)+04h
	fcall	___ftpack
	movf	(0+(?___ftpack)),w
	movwf	(?___awtoft)
	movf	(1+(?___ftpack)),w
	movwf	(?___awtoft+1)
	movf	(2+(?___ftpack)),w
	movwf	(?___awtoft+2)
	line	42
	
l4276:	
	return
	opt stack 0
GLOBAL	__end_of___awtoft
	__end_of___awtoft:
	signat	___awtoft,4219
	global	___ftge

;; *************** function ___ftge *****************
;; Defined at:
;;		line 5 in file "C:\Program Files\Microchip\xc8\v1.10\sources\ftge.c"
;; Parameters:    Size  Location     Type
;;  ff1             3    0[BANK0 ] float 
;;  ff2             3    3[BANK0 ] float 
;; Auto vars:     Size  Location     Type
;;		None
;; Return value:  Size  Location     Type
;;		None               void
;; Registers used:
;;		wreg, status,2, status,0
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       6       0       0
;;      Locals:         0       0       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0       6       0       0
;;Total ram usage:        6 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		_main
;;		_voltage_adc
;;		_sqrt
;; This function uses a non-reentrant model
;;
psect	text738,local,class=CODE,delta=2,merge=1
global __ptext738
__ptext738:	;psect for function ___ftge
psect	text738
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\ftge.c"
	line	5
	global	__size_of___ftge
	__size_of___ftge	equ	__end_of___ftge-___ftge
	
___ftge:	
	opt	stack 6
; Regs used in ___ftge: [wreg+status,2+status,0]
	line	6
	
l8821:	
	btfss	(___ftge@ff1+2),(23)&7
	goto	u4531
	goto	u4530
u4531:
	goto	l8825
u4530:
	line	7
	
l8823:	
	movf	(___ftge@ff1),w
	sublw	0
	movwf	(___ftge@ff1)
	movf	(___ftge@ff1+1),w
	skipc
	incfsz	(___ftge@ff1+1),w
	sublw	0
	movwf	1+(___ftge@ff1)
	movf	(___ftge@ff1+2),w
	skipc
	incfsz	(___ftge@ff1+2),w
	sublw	080h
	movwf	2+(___ftge@ff1)
	line	8
	
l8825:	
	btfss	(___ftge@ff2+2),(23)&7
	goto	u4541
	goto	u4540
u4541:
	goto	l8829
u4540:
	line	9
	
l8827:	
	movf	(___ftge@ff2),w
	sublw	0
	movwf	(___ftge@ff2)
	movf	(___ftge@ff2+1),w
	skipc
	incfsz	(___ftge@ff2+1),w
	sublw	0
	movwf	1+(___ftge@ff2)
	movf	(___ftge@ff2+2),w
	skipc
	incfsz	(___ftge@ff2+2),w
	sublw	080h
	movwf	2+(___ftge@ff2)
	line	10
	
l8829:	
	movlw	080h
	xorwf	(___ftge@ff1+2),f
	line	11
	
l8831:	
	movlw	080h
	xorwf	(___ftge@ff2+2),f
	line	12
	
l8833:	
	movf	(___ftge@ff2+2),w
	subwf	(___ftge@ff1+2),w
	skipz
	goto	u4555
	movf	(___ftge@ff2+1),w
	subwf	(___ftge@ff1+1),w
	skipz
	goto	u4555
	movf	(___ftge@ff2),w
	subwf	(___ftge@ff1),w
u4555:
	skipnc
	goto	u4551
	goto	u4550
u4551:
	goto	l8837
u4550:
	
l8835:	
	clrc
	
	goto	l4308
	
l8837:	
	setc
	
	line	13
	
l4308:	
	return
	opt stack 0
GLOBAL	__end_of___ftge
	__end_of___ftge:
	signat	___ftge,8312
	global	___lwtoft

;; *************** function ___lwtoft *****************
;; Defined at:
;;		line 29 in file "C:\Program Files\Microchip\xc8\v1.10\sources\lwtoft.c"
;; Parameters:    Size  Location     Type
;;  c               2    8[BANK0 ] unsigned int 
;; Auto vars:     Size  Location     Type
;;		None
;; Return value:  Size  Location     Type
;;                  3    8[BANK0 ] float 
;; Registers used:
;;		wreg, status,2, status,0, pclath, cstack
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       3       0       0
;;      Locals:         0       0       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0       3       0       0
;;Total ram usage:        3 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    2
;; This function calls:
;;		___ftpack
;; This function is called by:
;;		_ReadCtRatio
;;		_voltage_adc
;;		_voltage_adc_cal
;; This function uses a non-reentrant model
;;
psect	text739,local,class=CODE,delta=2,merge=1
global __ptext739
__ptext739:	;psect for function ___lwtoft
psect	text739
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\lwtoft.c"
	line	29
	global	__size_of___lwtoft
	__size_of___lwtoft	equ	__end_of___lwtoft-___lwtoft
	
___lwtoft:	
	opt	stack 3
; Regs used in ___lwtoft: [wreg+status,2+status,0+pclath+cstack]
	line	30
	
l8841:	
	movf	(___lwtoft@c),w
	movwf	(?___ftpack)
	movf	(___lwtoft@c+1),w
	movwf	(?___ftpack+1)
	clrf	(?___ftpack+2)
	movlw	(08Eh)
	movwf	0+(?___ftpack)+03h
	clrf	0+(?___ftpack)+04h
	fcall	___ftpack
	movf	(0+(?___ftpack)),w
	movwf	(?___lwtoft)
	movf	(1+(?___ftpack)),w
	movwf	(?___lwtoft+1)
	movf	(2+(?___ftpack)),w
	movwf	(?___lwtoft+2)
	line	31
	
l4362:	
	return
	opt stack 0
GLOBAL	__end_of___lwtoft
	__end_of___lwtoft:
	signat	___lwtoft,4219
	global	___altoft

;; *************** function ___altoft *****************
;; Defined at:
;;		line 43 in file "C:\Program Files\Microchip\xc8\v1.10\sources\altoft.c"
;; Parameters:    Size  Location     Type
;;  c               4    8[BANK0 ] long 
;; Auto vars:     Size  Location     Type
;;  sign            1   13[BANK0 ] unsigned char 
;;  exp             1   12[BANK0 ] unsigned char 
;; Return value:  Size  Location     Type
;;                  3    8[BANK0 ] float 
;; Registers used:
;;		wreg, status,2, status,0, pclath, cstack
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       4       0       0
;;      Locals:         0       2       0       0
;;      Temps:          0       0       0       0
;;      Totals:         0       6       0       0
;;Total ram usage:        6 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    2
;; This function calls:
;;		___ftpack
;; This function is called by:
;;		_main
;;		_voltage_adc
;;		_voltage_adc_cal
;; This function uses a non-reentrant model
;;
psect	text740,local,class=CODE,delta=2,merge=1
global __ptext740
__ptext740:	;psect for function ___altoft
psect	text740
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\altoft.c"
	line	43
	global	__size_of___altoft
	__size_of___altoft	equ	__end_of___altoft-___altoft
	
___altoft:	
	opt	stack 5
; Regs used in ___altoft: [wreg+status,2+status,0+pclath+cstack]
	line	45
	
l8845:	
	clrf	(___altoft@sign)
	line	46
	
l8847:	
	movlw	(08Eh)
	movwf	(___altoft@exp)
	line	47
	
l8849:	
	btfss	(___altoft@c+3),7
	goto	u4561
	goto	u4560
u4561:
	goto	l8855
u4560:
	line	48
	
l8851:	
	comf	(___altoft@c),f
	comf	(___altoft@c+1),f
	comf	(___altoft@c+2),f
	comf	(___altoft@c+3),f
	incf	(___altoft@c),f
	skipnz
	incf	(___altoft@c+1),f
	skipnz
	incf	(___altoft@c+2),f
	skipnz
	incf	(___altoft@c+3),f
	line	49
	clrf	(___altoft@sign)
	incf	(___altoft@sign),f
	goto	l8855
	line	53
	
l8853:	
	clrc
	rrf	(___altoft@c+3),f
	rrf	(___altoft@c+2),f
	rrf	(___altoft@c+1),f
	rrf	(___altoft@c),f
	line	54
	incf	(___altoft@exp),f
	line	52
	
l8855:	
	movlw	high highword(-16777216)
	andwf	(___altoft@c+3),w
	btfss	status,2
	goto	u4571
	goto	u4570
u4571:
	goto	l8853
u4570:
	line	56
	
l8857:	
	movf	(___altoft@c),w
	movwf	(?___ftpack)
	movf	(___altoft@c+1),w
	movwf	(?___ftpack+1)
	movf	(___altoft@c+2),w
	movwf	(?___ftpack+2)
	movf	(___altoft@exp),w
	movwf	0+(?___ftpack)+03h
	movf	(___altoft@sign),w
	movwf	0+(?___ftpack)+04h
	fcall	___ftpack
	movf	(0+(?___ftpack)),w
	movwf	(?___altoft)
	movf	(1+(?___ftpack)),w
	movwf	(?___altoft+1)
	movf	(2+(?___ftpack)),w
	movwf	(?___altoft+2)
	line	57
	
l4371:	
	return
	opt stack 0
GLOBAL	__end_of___altoft
	__end_of___altoft:
	signat	___altoft,4219
	global	___ftpack

;; *************** function ___ftpack *****************
;; Defined at:
;;		line 63 in file "C:\Program Files\Microchip\xc8\v1.10\sources\float.c"
;; Parameters:    Size  Location     Type
;;  arg             3    0[BANK0 ] unsigned um
;;  exp             1    3[BANK0 ] unsigned char 
;;  sign            1    4[BANK0 ] unsigned char 
;; Auto vars:     Size  Location     Type
;;		None
;; Return value:  Size  Location     Type
;;                  3    0[BANK0 ] float 
;; Registers used:
;;		wreg, status,2, status,0
;; Tracked objects:
;;		On entry : 60/0
;;		On exit  : 60/0
;;		Unchanged: FFF9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       5       0       0
;;      Locals:         0       0       0       0
;;      Temps:          0       3       0       0
;;      Totals:         0       8       0       0
;;Total ram usage:        8 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		___ftadd
;;		___ftdiv
;;		___ftmul
;;		___awtoft
;;		___lwtoft
;;		___altoft
;; This function uses a non-reentrant model
;;
psect	text741,local,class=CODE,delta=2,merge=1
global __ptext741
__ptext741:	;psect for function ___ftpack
psect	text741
	file	"C:\Program Files\Microchip\xc8\v1.10\sources\float.c"
	line	63
	global	__size_of___ftpack
	__size_of___ftpack	equ	__end_of___ftpack-___ftpack
	
___ftpack:	
	opt	stack 3
; Regs used in ___ftpack: [wreg+status,2+status,0]
	line	64
	
l8625:	
	movf	(___ftpack@exp),w
	skipz
	goto	u4220
	goto	l8629
u4220:
	
l8627:	
	movf	(___ftpack@arg+2),w
	iorwf	(___ftpack@arg+1),w
	iorwf	(___ftpack@arg),w
	skipz
	goto	u4231
	goto	u4230
u4231:
	goto	l8635
u4230:
	line	65
	
l8629:	
	clrf	(?___ftpack)
	clrf	(?___ftpack+1)
	clrf	(?___ftpack+2)
	goto	l4474
	line	67
	
l8633:	
	incf	(___ftpack@exp),f
	line	68
	clrc
	rrf	(___ftpack@arg+2),f
	rrf	(___ftpack@arg+1),f
	rrf	(___ftpack@arg),f
	line	66
	
l8635:	
	movlw	low highword(0FE0000h)
	andwf	(___ftpack@arg+2),w
	btfss	status,2
	goto	u4241
	goto	u4240
u4241:
	goto	l8633
u4240:
	goto	l8639
	line	71
	
l8637:	
	incf	(___ftpack@exp),f
	line	72
	incf	(___ftpack@arg),f
	skipnz
	incf	(___ftpack@arg+1),f
	skipnz
	incf	(___ftpack@arg+2),f
	line	73
	clrc
	rrf	(___ftpack@arg+2),f
	rrf	(___ftpack@arg+1),f
	rrf	(___ftpack@arg),f
	line	70
	
l8639:	
	movlw	low highword(0FF0000h)
	andwf	(___ftpack@arg+2),w
	btfss	status,2
	goto	u4251
	goto	u4250
u4251:
	goto	l8637
u4250:
	goto	l8643
	line	76
	
l8641:	
	decf	(___ftpack@exp),f
	line	77
	clrc
	rlf	(___ftpack@arg),f
	rlf	(___ftpack@arg+1),f
	rlf	(___ftpack@arg+2),f
	line	75
	
l8643:	
	btfss	(___ftpack@arg+1),(15)&7
	goto	u4261
	goto	u4260
u4261:
	goto	l8641
u4260:
	
l4483:	
	line	79
	btfsc	(___ftpack@exp),(0)&7
	goto	u4271
	goto	u4270
u4271:
	goto	l4484
u4270:
	line	80
	
l8645:	
	bcf	(___ftpack@arg)+(15/8),(15)&7
	
l4484:	
	line	81
	clrc
	rrf	(___ftpack@exp),f
	line	82
	
l8647:	
	movf	(___ftpack@exp),w
	movwf	((??___ftpack+0)+0+2)
	clrf	((??___ftpack+0)+0+1)
	clrf	((??___ftpack+0)+0+0)
	movf	0+(??___ftpack+0)+0,w
	iorwf	(___ftpack@arg),f
	movf	1+(??___ftpack+0)+0,w
	iorwf	(___ftpack@arg+1),f
	movf	2+(??___ftpack+0)+0,w
	iorwf	(___ftpack@arg+2),f
	line	83
	
l8649:	
	movf	(___ftpack@sign),w
	skipz
	goto	u4280
	goto	l4485
u4280:
	line	84
	
l8651:	
	bsf	(___ftpack@arg)+(23/8),(23)&7
	
l4485:	
	line	85
	line	86
	
l4474:	
	return
	opt stack 0
GLOBAL	__end_of___ftpack
	__end_of___ftpack:
	signat	___ftpack,12411
	global	_timer0_isr

;; *************** function _timer0_isr *****************
;; Defined at:
;;		line 108 in file "E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
;; Parameters:    Size  Location     Type
;;		None
;; Auto vars:     Size  Location     Type
;;		None
;; Return value:  Size  Location     Type
;;		None               void
;; Registers used:
;;		wreg, fsr0l, fsr0h, status,2, status,0
;; Tracked objects:
;;		On entry : 0/0
;;		On exit  : 40/0
;;		Unchanged: FFE9F/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK2
;;      Params:         0       0       0       0
;;      Locals:         0       0       0       0
;;      Temps:          5       0       0       0
;;      Totals:         5       0       0       0
;;Total ram usage:        5 bytes
;; Hardware stack levels used:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		Interrupt level 1
;; This function uses a non-reentrant model
;;
psect	text742,local,class=CODE,delta=2,merge=1
global __ptext742
__ptext742:	;psect for function _timer0_isr
psect	text742
	file	"E:\Dropbox\MyWork\Trial Google Code\Voltmeter\Source\mchp-1v\main.c"
	line	108
	global	__size_of_timer0_isr
	__size_of_timer0_isr	equ	__end_of_timer0_isr-_timer0_isr
	
_timer0_isr:	
	opt	stack 2
; Regs used in _timer0_isr: [wreg-fsr0h+status,2+status,0]
psect	intentry,class=CODE,delta=2
global __pintentry
__pintentry:
global interrupt_function
interrupt_function:
	global saved_w
	saved_w	set	btemp+0
	movwf	saved_w
	swapf	status,w
	movwf	(??_timer0_isr+2)
	movf	fsr0,w
	movwf	(??_timer0_isr+3)
	movf	pclath,w
	movwf	(??_timer0_isr+4)
	ljmp	_timer0_isr
psect	text742
	line	110
	
i1l6841:	
;main.c: 110: if(T0IF == 1)
	btfss	(90/8),(90)&7	;volatile
	goto	u162_21
	goto	u162_20
u162_21:
	goto	i1l1621
u162_20:
	line	113
	
i1l6843:	
;main.c: 111: {
;main.c: 113: RB5 = 0;
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	bcf	(53/8),(53)&7	;volatile
	line	114
;main.c: 114: RB6 = 0;
	bcf	(54/8),(54)&7	;volatile
	line	115
;main.c: 115: RB7 = 0;
	bcf	(55/8),(55)&7	;volatile
	line	116
;main.c: 116: RA4 = 0;
	bcf	(44/8),(44)&7	;volatile
	line	117
;main.c: 117: RB4 = 0;
	bcf	(52/8),(52)&7	;volatile
	line	118
	
i1l6845:	
;main.c: 118: PORTC = 0x00;
	clrf	(7)	;volatile
	line	119
	
i1l6847:	
;main.c: 119: RC2 = 0;
	bcf	(58/8),(58)&7	;volatile
	line	120
	
i1l6849:	
;main.c: 120: TRISC2 = 1;
	bsf	status, 5	;RP0=1, select bank1
	bsf	(1082/8)^080h,(1082)&7	;volatile
	line	121
	
i1l6851:	
;main.c: 121: if(RC2 == 1)
	bcf	status, 5	;RP0=0, select bank0
	btfss	(58/8),(58)&7	;volatile
	goto	u163_21
	goto	u163_20
u163_21:
	goto	i1l1622
u163_20:
	line	122
	
i1l6853:	
;main.c: 122: key_flage = 1;
	bsf	(_key_flage/8),(_key_flage)&7
	
i1l1622:	
	line	123
;main.c: 123: RC2 = 0;
	bcf	(58/8),(58)&7	;volatile
	line	124
;main.c: 124: TRISC2 = 0;
	bsf	status, 5	;RP0=1, select bank1
	bcf	(1082/8)^080h,(1082)&7	;volatile
	line	126
	
i1l6855:	
;main.c: 126: if(display_position == 0)
	movf	(_display_position),f
	skipz
	goto	u164_21
	goto	u164_20
u164_21:
	goto	i1l6859
u164_20:
	line	128
	
i1l6857:	
;main.c: 127: {
;main.c: 128: RB5 = 0;
	bcf	status, 5	;RP0=0, select bank0
	bcf	(53/8),(53)&7	;volatile
	line	129
;main.c: 129: RB6 = 0;
	bcf	(54/8),(54)&7	;volatile
	line	130
;main.c: 130: RB7 = 0;
	bcf	(55/8),(55)&7	;volatile
	line	131
;main.c: 131: RA4 = 0;
	bcf	(44/8),(44)&7	;volatile
	line	132
;main.c: 132: RB4 = 1;
	bsf	(52/8),(52)&7	;volatile
	line	134
;main.c: 134: }
	goto	i1l6875
	line	135
	
i1l6859:	
;main.c: 135: else if(display_position == 1)
	decf	(_display_position),w
	skipz
	goto	u165_21
	goto	u165_20
u165_21:
	goto	i1l6863
u165_20:
	line	137
	
i1l6861:	
;main.c: 136: {
;main.c: 137: RB4 = 0;
	bcf	status, 5	;RP0=0, select bank0
	bcf	(52/8),(52)&7	;volatile
	line	138
;main.c: 138: RB6 = 0;
	bcf	(54/8),(54)&7	;volatile
	line	139
;main.c: 139: RB7 = 0;
	bcf	(55/8),(55)&7	;volatile
	line	140
;main.c: 140: RA4 = 0;
	bcf	(44/8),(44)&7	;volatile
	line	141
;main.c: 141: RB5 = 1;
	bsf	(53/8),(53)&7	;volatile
	line	143
;main.c: 143: }
	goto	i1l6875
	line	144
	
i1l6863:	
;main.c: 144: else if(display_position == 2)
	movf	(_display_position),w
	xorlw	02h
	skipz
	goto	u166_21
	goto	u166_20
u166_21:
	goto	i1l6867
u166_20:
	line	146
	
i1l6865:	
;main.c: 145: {
;main.c: 146: RB4 = 0;
	bcf	status, 5	;RP0=0, select bank0
	bcf	(52/8),(52)&7	;volatile
	line	147
;main.c: 147: RB5 = 0;
	bcf	(53/8),(53)&7	;volatile
	line	148
;main.c: 148: RB7 = 0;
	bcf	(55/8),(55)&7	;volatile
	line	149
;main.c: 149: RA4 = 0;
	bcf	(44/8),(44)&7	;volatile
	line	150
;main.c: 150: RB6 = 1;
	bsf	(54/8),(54)&7	;volatile
	line	152
;main.c: 152: }
	goto	i1l6875
	line	153
	
i1l6867:	
;main.c: 153: else if(display_position == 3)
	movf	(_display_position),w
	xorlw	03h
	skipz
	goto	u167_21
	goto	u167_20
u167_21:
	goto	i1l6871
u167_20:
	line	155
	
i1l6869:	
;main.c: 154: {
;main.c: 155: RB4 = 0;
	bcf	status, 5	;RP0=0, select bank0
	bcf	(52/8),(52)&7	;volatile
	line	156
;main.c: 156: RB5 = 0;
	bcf	(53/8),(53)&7	;volatile
	line	157
;main.c: 157: RB6 = 0;
	bcf	(54/8),(54)&7	;volatile
	line	158
;main.c: 158: RA4 = 0;
	bcf	(44/8),(44)&7	;volatile
	line	159
;main.c: 159: RB7 = 1;
	bsf	(55/8),(55)&7	;volatile
	line	161
;main.c: 161: }
	goto	i1l6875
	line	162
	
i1l6871:	
;main.c: 162: else if(display_position == 4)
	movf	(_display_position),w
	xorlw	04h
	skipz
	goto	u168_21
	goto	u168_20
u168_21:
	goto	i1l1626
u168_20:
	line	164
	
i1l6873:	
;main.c: 163: {
;main.c: 164: RB4 = 0;
	bcf	status, 5	;RP0=0, select bank0
	bcf	(52/8),(52)&7	;volatile
	line	165
;main.c: 165: RB5 = 0;
	bcf	(53/8),(53)&7	;volatile
	line	166
;main.c: 166: RB6 = 0;
	bcf	(54/8),(54)&7	;volatile
	line	167
;main.c: 167: RB7 = 0;
	bcf	(55/8),(55)&7	;volatile
	line	168
;main.c: 168: RA4 = 1;
	bsf	(44/8),(44)&7	;volatile
	goto	i1l6875
	line	172
	
i1l1626:	
	
i1l6875:	
;main.c: 169: }
;main.c: 172: if(display_position != 4)
	movf	(_display_position),w
	xorlw	04h
	skipnz
	goto	u169_21
	goto	u169_20
u169_21:
	goto	i1l6879
u169_20:
	line	173
	
i1l6877:	
;main.c: 173: PORTC = disp_buff[display_position];
	movf	(_display_position),w
	addlw	_disp_buff&0ffh
	movwf	fsr0
	bcf	status, 7	;select IRP bank1
	movf	indf,w
	bcf	status, 5	;RP0=0, select bank0
	movwf	(7)	;volatile
	goto	i1l1633
	line	175
	
i1l6879:	
;main.c: 174: else
;main.c: 175: PORTC = LedStatus.byte;
	bcf	status, 5	;RP0=0, select bank0
	movf	(_LedStatus),w
	movwf	(7)	;volatile
	
i1l1633:	
	line	179
;main.c: 179: if(DecimalFlag != 0)
	movf	(_DecimalFlag),w
	skipz
	goto	u170_20
	goto	i1l1635
u170_20:
	line	181
	
i1l6881:	
;main.c: 180: {
;main.c: 181: if((DecimalFlag-1) == display_position)
	movf	(_DecimalFlag),w
	addlw	low(-1)
	movwf	(??_timer0_isr+0)+0
	movlw	high(-1)
	skipnc
	movlw	(high(-1)+1)&0ffh
	movwf	((??_timer0_isr+0)+0)+1
	movf	(_display_position),w
	xorwf	0+(??_timer0_isr+0)+0,w
	iorwf	1+(??_timer0_isr+0)+0,w
	skipz
	goto	u171_21
	goto	u171_20
u171_21:
	goto	i1l1635
u171_20:
	line	182
	
i1l6883:	
;main.c: 182: RC7 = 1;
	bsf	(63/8),(63)&7	;volatile
	goto	i1l6885
	line	183
	
i1l1635:	
	line	184
;main.c: 183: else
;main.c: 184: RC7 = 0;
	bcf	(63/8),(63)&7	;volatile
	line	189
	
i1l6885:	
;main.c: 189: display_position++;
	incf	(_display_position),f
	line	190
	
i1l6887:	
;main.c: 190: if(display_position>=5)
	movlw	(05h)
	subwf	(_display_position),w
	skipc
	goto	u172_21
	goto	u172_20
u172_21:
	goto	i1l6891
u172_20:
	line	191
	
i1l6889:	
;main.c: 191: display_position = 0;
	clrf	(_display_position)
	line	193
	
i1l6891:	
;main.c: 193: T0IF = 0;
	bcf	(90/8),(90)&7	;volatile
	line	194
;main.c: 194: }
	goto	i1l1643
	line	195
	
i1l1621:	
	line	197
;main.c: 195: else
;main.c: 196: {
;main.c: 197: if(TMR1IF == 1)
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	btfss	(96/8),(96)&7	;volatile
	goto	u173_21
	goto	u173_20
u173_21:
	goto	i1l1640
u173_20:
	line	200
	
i1l6893:	
;main.c: 198: {
;main.c: 200: TMR1IF = 0;
	bcf	(96/8),(96)&7	;volatile
	line	201
;main.c: 201: }
	goto	i1l1643
	line	202
	
i1l1640:	
	line	204
;main.c: 202: else
;main.c: 203: {
;main.c: 204: if((RCIE)&&(RCIF))
	bsf	status, 5	;RP0=1, select bank1
	btfss	(1125/8)^080h,(1125)&7	;volatile
	goto	u174_21
	goto	u174_20
u174_21:
	goto	i1l1643
u174_20:
	
i1l6895:	
	bcf	status, 5	;RP0=0, select bank0
	btfss	(101/8),(101)&7	;volatile
	goto	u175_21
	goto	u175_20
u175_21:
	goto	i1l1643
u175_20:
	line	207
	
i1l6897:	
;main.c: 205: {
;main.c: 207: RCIF = 0;
	bcf	(101/8),(101)&7	;volatile
	line	211
	
i1l1643:	
	movf	(??_timer0_isr+4),w
	movwf	pclath
	movf	(??_timer0_isr+3),w
	movwf	fsr0
	swapf	(??_timer0_isr+2)^0FFFFFF80h,w
	movwf	status
	swapf	saved_w,f
	swapf	saved_w,w
	retfie
	opt stack 0
GLOBAL	__end_of_timer0_isr
	__end_of_timer0_isr:
	signat	_timer0_isr,88
psect	text743,local,class=CODE,delta=2,merge=1
global __ptext743
__ptext743:	;psect for function _timer0_isr
	global	btemp
	btemp set 07Eh

	DABS	1,126,2	;btemp
	global	wtemp0
	wtemp0 set btemp
	end
